
                    <p style="margin-left:0pt;text-align:left;"><span style="color:#e54c5e;">注意事项提醒：</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#e54c5e;">切勿切屏：考试期间不要在其他设备上搜索题库，避免触发切屏检测，导致考试因切屏三次自动结束。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#e54c5e;">题目乱序：考试题目顺序每次都会随机排列。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#e54c5e;">选项顺序不同：每次考试选项的顺序可能会变化，答题时请核对选项的值是否正确。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#e54c5e;">新版题库说明：</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#e54c5e;">题型分布：单选题40题，多选题20题。</span></p> 
<p><span style="color:#e54c5e;">特别提醒：注意仔细阅读选项，确保选择的是正确答案。</span></p> 
<p>考试链接：<a class="link-info" href="https://developer.huawei.com/consumer/cn/training/dev-cert-detail/101684223987951077" rel="nofollow" title="HarmonyOS应用开发者高级认证">HarmonyOS应用开发者高级认证</a></p> 
<h2 style="margin-left:0pt;text-align:left;"><a name="t0"></a><span style="color:#000000;"><strong><a name="zkZrG"></a></strong></span></h2> 
<p><a href="https://so.csdn.net/so/search?q=%E9%B8%BF%E8%92%99&amp;spm=1001.2101.3001.7020" target="_blank" class="hl hl-1" data-report-click="{&quot;spm&quot;:&quot;1001.2101.3001.7020&quot;,&quot;dest&quot;:&quot;https://so.csdn.net/so/search?q=%E9%B8%BF%E8%92%99&amp;spm=1001.2101.3001.7020&quot;,&quot;extra&quot;:&quot;{\&quot;searchword\&quot;:\&quot;鸿蒙\&quot;}&quot;}" data-tit="鸿蒙" data-pretit="鸿蒙">鸿蒙</a>next群：264083470</p> 
<p><img alt="" height="1200" src="https://i-blog.csdnimg.cn/direct/1e75513ebc014cc39e8fba78212d139e.png" width="1112"></p> 
<h2 style="margin-left:0pt;text-align:left;"><a name="t1"></a><span style="color:#000000;"><strong><strong><span style="color:#000000;"><strong>单选题</strong></span></strong></strong></span></h2> 
<p style="margin-left:0pt;text-align:left;"><a name="ud262601b"></a><span style="color:#000000;"><a name="u6ad4e2c3"></a>1、以下哪个装饰器用来表示并发共享对象 （D)</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="u9b5c44ba"></a><span style="color:#4d4d4d;">A@Shared</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="u3b24d7bb"></a><span style="color:#4d4d4d;">B@State</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="u60acd605"></a><span style="color:#4d4d4d;">C@</span><a href="https://so.csdn.net/so/search?q=Style&amp;spm=1001.2101.3001.7020" title="Style">Style</a></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="u4f519cf1"></a><span style="color:#4d4d4d;">D@Sendable</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="u816a30fd"></a><span style="color:#4d4d4d;"><a name="u8580e5cc"></a>2、以下关于Taskpool和Worker的描述正确的是 （C）</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="ua7cdd504"></a><span style="color:#4d4d4d;">A TaskPool和Worker的任务执行时长上限都是无限制</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="u5ac103ef"></a><span style="color:#4d4d4d;">B Worker自行管理生命周期，开发者无需关心任务负载高低</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="u438e2d9e"></a><span style="color:#4d4d4d;">C TaskPool支持任务延时执行</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="u234b899f"></a><span style="color:#4d4d4d;">D 开发者需要自行管理taskpool的数量及生命周期</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="uf4737890"></a><span style="color:#4d4d4d;"><a name="u87b18fcd"></a>3、ArkTS支持以下哪个函数 （D)</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="u405c1945"></a><span style="color:#4d4d4d;">A Object.isExtensible();</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="u0fff61b6"></a><span style="color:#4d4d4d;">B Object.isPrototypeOf();</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="u74f6ee37"></a><span style="color:#4d4d4d;">C Object.getOwnPropertySymbols();</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="u5688c377"></a><span style="color:#4d4d4d;">D Object.keys();</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="uc2fb6256"></a><span style="color:#4d4d4d;"><a name="u8eae8f58"></a>4、以下哪些赋值语句在ArkTS中是合法 （A)</span></p> 
<p style="margin-left:0pt;text-align:justify;"><img alt="" height="338" src="https://i-blog.csdnimg.cn/direct/4246931842c04830bdff4e70e580bc42.png" width="634"></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#4d4d4d;">A value2</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#4d4d4d;">B value3</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#4d4d4d;">C value1</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#4d4d4d;">D value4</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#4d4d4d;">5、下面关于方舟字节码格式IMM16_ID16_IMM8描述正确的是 （A）</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#4d4d4d;">A.8位操作码，16位立即数，16位id，8位立即数</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#4d4d4d;">B.16位前缀操作码，16位立即数，8位寄存器</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#4d4d4d;">C.8位操作码，16位立即数，16位id，8位寄存器</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#4d4d4d;">D.8位操作码，16位立即数，2个8位寄存器</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#4d4d4d;">6、</span><span style="color:#333333;">从桌面冷启动如下应用，点击Change按钮5次，整个过程中，代码中的2条log依次出现的次数，最初和最后画面上显示的【num = ?】的数字是 （B）</span></p> 
<p style="margin-left:0pt;text-align:justify;"><img alt="" height="747" src="https://i-blog.csdnimg.cn/direct/914afdd919164d17be4c515fa9f56461.png" width="720"></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="ua712a937"></a><span style="color:#4d4d4d;">A 1,5,1,6</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="u7b343436"></a><span style="color:#4d4d4d;">B 2,4,1,2</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="u4b2026a9"></a><span style="color:#4d4d4d;">C 2,4,1,6</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="u11ccf6bb"></a><span style="color:#4d4d4d;">D 0,6,1,6</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="ud02d7e2d"></a><span style="color:#4d4d4d;"><a name="u8d3bd0a4"></a>7、</span><span style="color:#333333;">以下关于ArkUI NavDestination组件的生命周期执行顺序中正确的是 （C）</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="ud07d8ad6"></a><span style="color:#333333;">AonWillappear-&gt;onAppear-&gt;onWillShow-&gt;onShow-&gt;onWillDisappear-&gt;onWillHide-&gt;onHidden-&gt;onDisappear</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u7de8b9bd"></a><span style="color:#333333;">B onWillappear-&gt;onWillShow-&gt;onShow-&gt;onAppear-&gt;onWillHide-&gt;onHidden-&gt;onWillDisappear-&gt;onDisappear</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ud64912c2"></a><span style="color:#333333;">C onWillappear-&gt;onAppear-&gt;onWillShow-&gt;onShow-&gt;onWillHide-&gt;onHidden-&gt;onWillDisappear-&gt;onDisappear</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u6eedabf3"></a><span style="color:#333333;">D onWillappear-&gt;onAppear-&gt;onWillShow-&gt;onShow-&gt;onWillHide-&gt;onWillDisappear-&gt;onHidden-&gt;onDisappear</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u3a85936f"></a><span style="color:#333333;"><a name="ub46e57fd"></a>8、已知下列代码PageOne页面为navigation中的某一子页面，依次点击PageOne页面中toPageTwo按钮，PageTwo页面中toPageOne按钮，此时点击get按钮获取全部名为name的NavDestination页面的位置索引为 （C）</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="u826cc143"></a><span style="color:#333333;">A[0,1]</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="u9d41fb87"></a><span style="color:#333333;">B[2,1]</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="ub20d6dc5"></a><span style="color:#333333;">C[0,2]</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="uf026fd79"></a><span style="color:#333333;">D[1,2]</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="uad5ed914"></a><span style="color:#333333;"><a name="u45894ef9"></a>9、一个复杂的项目，该项目不仅包含主入口模块（Entry Module），还有多个特性的功能模块（Feature Modules/HSP），并且这些模块间存在着相互调用关系。为了确保在调试过程中能够完整地测试所有交互逻辑，需要将涉及到的所有模块的HAP包都部署到目标设备上。请从以下选项中选择正确的操作步骤来配置DevEco Studio，以便一次性部署和调试项目中的多个模块 （A)</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="u43863689"></a><span style="color:#333333;">A 进入“Run &gt; Edit Configurations”菜单，在“Deploy Multi Hap”选项卡下，勾选“Deploy Multi Hap Packages”，随后在列表中选择需要部署的模块。</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ubd60df4e"></a><span style="color:#333333;">B 无需特殊配置，DevEco Studio会自动检测到项目中的所有模块依赖，并在每次调试运行时自动部署所有相关HAP包。</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ucb5ff458"></a><span style="color:#333333;">C 在项目结构界面手动选择每个模块，单独编译并逐一将生成的HAP包通过HDC命令推送到设备上。</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u25f40e0b"></a><span style="color:#333333;">D 直接点击运行按钮，DevEco Studio会弹出对话框询问需要部署哪些模块，从中选择需要的模块后开始调试。</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u05fd9266"></a><span style="color:#333333;"><a name="uc6bb33ec"></a>10、张工正在使用DevEco Studio进行一个复杂项目的开发工作，项目中包含了成千上万行代码且涉及众多模块。在重构代码的过程中，他意识到需要对一个核心类名进行更改，考虑到这个类在整个项目中被广泛引用，手动修改不仅耗时且容易出错。 基于DevEco Studio提供的代码编辑功能，以下哪个描述最准确地概述了张工如何高效且安全地完成对类名的更改，同时确保整个项目中所有相关引用同步更新？（B）</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u07eaeec5"></a><span style="color:#333333;">A 张工需打开项目搜索功能，输入旧类名找到所有匹配项，逐一进行替换，完成更名操作。</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u67f6e79b"></a><span style="color:#333333;">B 张工选中需要更名的类名，使用快捷键Shift+F6或右键菜单Refactor -&gt; Rename，在弹出框中输入新名称并选择替换范围后，点击“Refactor”完成更名操作，确保所有相关引用自动更新。</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u198df21c"></a><span style="color:#333333;">C 张工只需简单选中需要更名的类名，按下Delete键删除后直接输入新名称，DevEco Studio会自动识别并更新所有引用。</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u1c85b0be"></a><span style="color:#333333;">D 张工在代码编辑器中右键点击该类名，选择“Find Usage”，手动浏览所有引用位置并逐一修改为新名称。</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="uf6112a0a"></a><span style="color:#333333;"><a name="uaeaa42cf"></a>11、在开发HarmonyOS应用工程时，随着业务的发展，现在需要创建一个模块，关于在DevEco Studio中创建Module，下列选项哪种方式是错误的？（D）</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u815ae4bc"></a><span style="color:#333333;">A 鼠标移到工程目录顶部，单击鼠标右键，选择New &gt; Module…，开始创建新的Module，此时该module将创建在工程根目录下。B 选中工程目录中任意文件，然后在菜单栏选择File &gt; New &gt; Module…，开始创建新的Module，此时该module将创建在工程根目录下。C 在工程根目录下创建一个新的Directory，可在该目录下单击鼠标右键，选择New &gt; Module…，创建新的Module，此时module将创建在该文件目录下。D 在hvigor目录下，单击鼠标右键，选择New &gt; Module…，创建新的Module，此时module将创建在该文件目录下。</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u79606c64"></a><span style="color:#333333;"><a name="ubb146cc7"></a>12、DevEco Studio提供HarmonyOS应用/服务的UI预览界面与源代码文件间的双向预览功能，支持ets文件与预览器界面的双向预览。关于双向预览，下列选项说法错误的是？（C）</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="uc89c1d81"></a><span style="color:#333333;">A 选中预览器UI界面中的组件，则组件树上对应的组件将被选中，同时代码编辑器中的布局文件中对应的代码块高亮显示。</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ud9f0ca8d"></a><span style="color:#333333;">B 选中布局文件中的代码块，则在UI界面会高亮显示，组件树上的组件节点也会呈现被选中的状态。</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u24348f3a"></a><span style="color:#333333;">C 双向预览不支持通过组件的属性面板实时修改属性或样式。</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ue1f4ac40"></a><span style="color:#333333;">D 选中组件树中的组件，则对应的代码块和UI界面也会高亮显示。</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u66f3307e"></a><span style="color:#333333;"><a name="ue6e47500"></a>13、在使用DevEco Studio的Profiler进行HarmonyOS应用或服务内存管理优化时，以下哪个描述最准确地概述了“Allocation Insight”功能在识别和解决内存问题中的作用 （C)</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ue4c59c24"></a><span style="color:#333333;">A Allocation Insight仅提供内存分配总量的概览，帮助开发者宏观了解内存使用趋势，但对于具体泄漏或抖动问题无能为力</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="uce58dbf9"></a><span style="color:#333333;">B Allocation Insight详细展示应用运行时的每条语句柄分配记录，便于开发者逐一检查内存使用，但不提供内存泄漏的自动识别功能</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="uc04d0575"></a><span style="color:#333333;">C Allocation Insight通过分析应用服务运行时的内存分配及使用情况，辅助定位内存泄漏、内存抖动和溢出问题，支持优化内存使用</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u03f83726"></a><span style="color:#333333;">D Allocation Insight主要关注于内存碎片整理，减少内存分配的不连续性问题，对内存泄漏</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ud9a868c4"></a><span style="color:#333333;"><a name="ucb3d4d0b"></a>14、HarmonyOS应用开发团队正着手优化一款面向全球市场的在线教育应用，该应用在特定课程直播环节出现了性能波动和响应延迟的问题，严重影响用户体验。打算利用DevEco Profiler来进行性能优化。DevEco Profiler其设计核心和主要优势是什么 （A)A DevEco Profiler依据Top-Down设计理念，通过高度整合的数据展示范式，提供从宏观到微观的性能数据分析，加速开发者定位和解决问题的过程</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ue8f47b0d"></a><span style="color:#333333;">B DevEco Profiler主要是一个自动化修复工具，能自动检测并解决所有HarmonyOS应用的性能问题</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u68e80309"></a><span style="color:#333333;">C DevEco Profiler专注于用户界面设计的美化，使开发者操作更为直观</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ufb33d256"></a><span style="color:#333333;">D DevEco Profiler采用Bottom-Up设计原则，从底层代码细节开始逐步构建性能模型</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u16b9b349"></a><span style="color:#333333;"><a name="u6b22f1bf"></a>15、应用开发中使用的各类资源文件，需要放入特定子目录中存储管理，以下关于资源说法错误的是 （D)</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u0da90d6c"></a><span style="color:#333333;">A base目录是默认存在的目录，二级子目录element用于存放字符串、颜色、布尔值等基础元素，media、profile存放媒体、动画、布局等资源文件。 </span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ue6c4a501"></a><span style="color:#333333;">B stage模型多工程情况下，共有的资源文件放到AppScope下的resources目录。</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u761a64b0"></a><span style="color:#333333;">C resfile目录，应用安装后，resfile资源会被解压到应用沙箱路径，通过Context属性resourceDir获取到resfile资源目录后，可通过文件路径访问。</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u2e2d25e4"></a><span style="color:#333333;">D rawfile目录，支持创建多层子目录，子目录名称可以自定义，文件夹内可以自由放置各类资源文件。目录中的资源文件会被编译成二进制文件，并赋予资源文件ID。</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u6ff9c415"></a><span style="color:#333333;"><a name="u4b65cea9"></a>16、</span><span style="color:#4d4d4d;">在组件中，经常需要使用字符串、图片等资源。HSP中的组件需要使用资源时，一般将其所用资源放在HSP包内，而非放在HSP的使用方处，以符合高内聚低耦合的原则。下面访问HSP资源错误的是 （B)</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="udf4484a3"></a><span style="color:#4d4d4d;">B 使用相对路径的方式，访问HSP中的资源。Image(“…/…/resources/base/media/example.png”) .id(‘example’) .borderRadius(‘48px’)</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="u337390b9"></a><span style="color:#4d4d4d;"><a name="u920b96c7"></a>17、</span><span style="color:#333333;">HarmonyOS提供了多种包结构，每种包编译后的产物都不同，下面说法错误的是 （C)</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="uacfa34f1"></a><span style="color:#333333;">A hap包编译后的产物是.hap文件。</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="u96b9e8f0"></a><span style="color:#333333;">B hsp包编译后的产物是.hsp文件。</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="ua9271da4"></a><span style="color:#333333;">C app包编译后的产物是.app文件。</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="u8e2e8b91"></a><span style="color:#333333;">D har包编译后的产物是.har文件。</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="ub3a4dd93"></a><span style="color:#333333;"><a name="ue16f0659"></a>18、</span><span style="color:#43484e;">一个应用的一个UIAblity，其exported字段配置为false，以下哪个场景可以拉起这个UIAbility （A）</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u30715e38"></a><span style="color:#4d4d4d;">A caller应用在后台，申请了长时任务，有STARTINVISIBLE ABILITY权限</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u0e4a910e"></a><span style="color:#4d4d4d;">B caller应用在后台，申请了长时任务，有START ABILITY FROM BACKGROUND权限</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u77209e70"></a><span style="color:#4d4d4d;">C caller应用在后台，有STARTINVISIBLE ABILITY权限</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u984db35e"></a><span style="color:#4d4d4d;">D caller应用在后台，有START ABILITY FROM BACKGROUND权限</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u29142dc2"></a><span style="color:#4d4d4d;"><a name="u3a00d0d5"></a>19、singleton模式的UIAbility，在冷启动时生命周期的执行顺序是:（D)</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ufaf8ba9d"></a><span style="color:#4d4d4d;">A onCreate-&gt;onForeground-&gt;onWindowStageCreate</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="uafca42c3"></a><span style="color:#4d4d4d;">B onCreate-&gt;onBackground-&gt;onForeground</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="uf97a3975"></a><span style="color:#4d4d4d;">C onCreate-&gt;onBackground-&gt;onWindowStageCreate</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u50738d24"></a><span style="color:#4d4d4d;">D onCreate-&gt;onWindowStageCreate-&gt;onForeground</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="u1bfa2be4"></a><span style="color:#4d4d4d;"><a name="u2efb989e"></a>20、</span><span style="color:#333333;">可以通过下面那个接口拉起导航类的垂域面板 （C)</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="ua6c1dbd5"></a><span style="color:#333333;">A startAbility</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="uc4fbbd9b"></a><span style="color:#333333;">B startAbilityForResult</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="ufb972696"></a><span style="color:#333333;">C startAbilityByType</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="u4af8c31e"></a><span style="color:#333333;">D startAbilityByCall</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="ua5f3e1d0"></a><span style="color:#333333;"><a name="u27681941"></a>21、下面的配置存在有几处错误 app.json5配置文件：（A)</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="u38995280"></a><span style="color:#333333;">A.1</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="u75c3560c"></a><span style="color:#333333;">B.4</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="u51bb9ba3"></a><span style="color:#333333;">C.2</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="u566a3106"></a><span style="color:#333333;">D.3</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="uaf4d9000"></a><span style="color:#333333;"><a name="uee434761"></a>22、当使用状态变量进行ArkUI组件间数据通信的时候，如果两个组件间没有直接的嵌套关系（非父子和祖孙关系组件），但是他们又属于同一页面，最佳的装饰器应该选用哪个？（D)</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="ueca33a08"></a><span style="color:#333333;">A @Provide+@Consume</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="u0dcc9d6d"></a><span style="color:#333333;">B AppStorage</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="u03e8efb7"></a><span style="color:#333333;">C @State+@Link</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="ufec7b533"></a><span style="color:#333333;">D LocalStorage</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="ue9f7600f"></a><span style="color:#333333;"><a name="uaeff2786"></a>23、ArkUI组件复用的作用机制是减少了什么时间从而降低了丢帧率？（B)</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="u154148a1"></a><span style="color:#333333;">A数据挂载时间</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="ude6c7f0e"></a><span style="color:#333333;">B组件节点和对象的创建时间</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="u3a2806f1"></a><span style="color:#333333;">C组件销毁时间</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="u272b0319"></a><span style="color:#333333;">D组件节点渲染时间</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="u6b4531e9"></a><span style="color:#333333;"><a name="u885ef748"></a>24、为了提高性能，所以List组件支持懒加载，可以通过配置cachedCount属性设置缓存列表项的数量。当我们不设置List的属性cachedCount时，该属性的默认值是？（A)</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="u2187eebb"></a><span style="color:#333333;">A 1</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="u47694813"></a><span style="color:#333333;">B 3</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="u7376f81f"></a><span style="color:#333333;">C 2</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="u08db13f2"></a><span style="color:#333333;">D 0</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="u7239982b"></a><span style="color:#333333;"><a name="ucbea7b3a"></a>25、作为应用开发者，你使用hiAppEvent订阅了崩溃事件。应用崩溃后，从onReceive接口返回的AppEventInfo中（）属性可以获取崩溃调用栈信息。（D)</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="ubfe95a04"></a><span style="color:#333333;">A domain</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="u0c4a7645"></a><span style="color:#333333;">B eventType</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="u43e148d9"></a><span style="color:#333333;">C name</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="uea440e42"></a><span style="color:#333333;">D params</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="uaac71a13"></a><span style="color:#333333;"><a name="ua80e0598"></a>26、</span><span style="color:#43484e;">以下关于动态import说法正确的是（B）</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="u2fda4248"></a><span style="color:#333333;">A 动态import支持懒加载，所以不能用于提升页面的加载速度。</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="u91901192"></a><span style="color:#333333;">B 动态import支持加载HSP模块、HAR模块、OHPM包、Native库。</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="ua75c82fd"></a><span style="color:#333333;">C 动态import和静态import相比，灵活性更好，性能更好。</span></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="u96531d68"></a><a href="mailto:D%E5%8A%A8%E6%80%81import%E4%B8%8D%E6%94%AF%E6%8C%81%E5%AF%BC%E5%85%A5SDK%E7%9A%84API%EF%BC%8C%E5%A6%82@ohos.*" rel="nofollow"><span style="color:#4d4d4d;">D 动态import不支持导入SDK的API，如@ohos.*</span></a></p> 
<p style="margin-left:0pt;text-align:justify;"><a name="u60709afb"></a><span style="color:#4d4d4d;"><a name="ua8cd0cd6"></a>27、以下对系统兼容性的理解正确的是 （C)</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u862ed678"></a><span style="color:#4d4d4d;">A.应用不需要关注系统的兼容性变化，那都是系统开发人员需要关注的事情</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u4ba80b9e"></a><span style="color:#4d4d4d;">B.已发布的系统能力有可能会发生非兼容性变更，比如新增特性或修改问题导致的行为不兼容，这种情况下应用需要关注changelog并进行适配。</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u6f22b967"></a><span style="color:#4d4d4d;">C.安全法律法规等不可控因素会导致系统非兼容性变更，开发者需要积极适配</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ufe0c97fc"></a><span style="color:#4d4d4d;">D.系统能力都会保持绝对的兼容性，不能因为任何非兼容性的修改而导致开发者成本上升</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u3d0eebd0"></a><span style="color:#4d4d4d;"><a name="u8c6dddd3"></a>28、关于静态检查描述错误的是 （D)</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u84784bb9"></a><span style="color:#4d4d4d;">A.静态分析工具也在不断改进和升级。使用高级的静态分析工具可以提高代码检测的准确性和效率。例如，一些静态分析工具可以检测代码中的内存泄漏、死锁问题，从而提高代码的质量和可靠性。</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u07fb9156"></a><span style="color:#4d4d4d;">B.静态检查是指使用静态代码分析工具对软件的“静态”(不运行的) 代码进行分析的一种方法，找出代码中潜在的漏洞。静态代码分析器检查源代码，找出特定的漏洞，并检查代码是否符合各种编码标准。</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u447b4dfd"></a><span style="color:#4d4d4d;">C.HarmonyOS应用可以采用ARKTS静态检查工具Codelinter或者CodeArts工具来做静态代码分析。</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u603f8565"></a><span style="color:#4d4d4d;">D.静态检查可以检测代码中的语法错误和潜在的逻辑错误，也支持检测代码在运行时现的错误，因此静态检查可以替代动态测试。</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u744c2201"></a><span style="color:#4d4d4d;"><a name="u886020ab"></a>29、以下关于应用架构技术选型说法不正确的是 (D)</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u3fa98fb8"></a><span style="color:#4d4d4d;">A 元服务和应用可以共用一个代码工程，采用多目标产物构建方式，构建出应用和元服务两个产物，用于上架。</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u855d1a5b"></a><span style="color:#4d4d4d;">B 对于初始版本的应用，功能比较简单，可以考虑采用单HAP加上多个HAR工程构建代码工程。</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u20dcbd1b"></a><span style="color:#4d4d4d;">C 一些应用的扩展能力，比如备份、服务卡片，可以采用ExtensionAbility做成单独的feature HAP包，独立分发。</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u684de88e"></a><span style="color:#4d4d4d;">D 随着业务的发展，应用功能会越来越多，某些功能可以做成动态加载，动态加载的模块采用HAR工程来构建，方便复用和共享。</span></p> 
<p><a name="u19fb0afe"></a><span style="color:#4d4d4d;">30、</span><span style="color:#333333;">依次点击A、B、C、D四个按钮，其中不会触发UI刷新的是 (C）</span></p> 
<p><img alt="" height="720" src="https://i-blog.csdnimg.cn/direct/759f55ff515a48f7962141beb999d8ff.png" width="921"></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">A A</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">B B</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">C C</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">D D</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">31、使用promptAction.showToast如何设置显示在其他应用之上？（B)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">A ToastShowMode.DEFAULT</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">B ToastShowMode.TOP_MOST</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">C 无需配置，默认显示在其他应用之上</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">D ToastShowMode.SYSTEM_TOP_MOST</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">32、</span><span style="color:#000000;">为了使isShow参数值与半模态界面的状态同步，可以使用下列那种方式双向绑定isShow参数？</span></p> 
<p><span style="color:#000000;">选择这个 </span><strong><span style="color:#e83e8c;">$$this.isShow</span></strong><strong><span style="color:#43484e;">&nbsp;=== 双【$】符号修饰</span></strong></p> 
<p><img alt="" height="505" src="https://i-blog.csdnimg.cn/direct/962166cfd31a4ae9a6c7c630eb5f83a0.png" width="1200"></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">33、以下关于垂直滚动Grid组件使用cachedCount属性的说明正确的是 （A)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A 设置cachedCount为1，则Grid在显示范围上下各缓存1行GridItem</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B 设置cachedCount为1，则Grid在显示范围下方缓存1行GridItem</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C 设置cachedCount为1，则Grid在显示范围下方缓存1个GridItem</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D 设置cachedCount为1，则Grid在显示范围上下各缓存1个GridItem</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">34、</span><span style="color:#4d4d4d;">如果要实现Row组件内的子元素均匀排列，且第一个元素与行首对齐，最后一个元素与行尾对齐，需要使用justifyContent的哪个枚举值 （A)</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#4d4d4d;">A SpaceBetween</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#4d4d4d;">B Start</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#4d4d4d;">C End</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#4d4d4d;">D SpaceEvenly</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#4d4d4d;">35、项目需要为不同的设备形态（如手机、智能手表）提供定制化构建。请说明如何在DevEco Studio中设置不同的构建配置，以生成针对不同设备的hap包？（B）</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">A 在工程级别build-profile.json5定义多个product，在每个product的config/deviceType中定义不同的设备类型</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">B 在模块级别build-profile.json5定义多个target，在每个target的config/deviceType中定义不同的设备类型</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">C 在工程级别build-profile.json5定义多个product，在每个product的config/distributionFilter中定义不同的设备类型</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">D 在模块级别build-profile.json5定义多个target，在每个target的config/distributionFilter中定义不同的设备类型</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">36、开发者小林正在使用DevEco Studio开发一款HarmonyOS应用，并在真机上进行调试。他在运行应用的过程中突然发现一处UI布局需要微调，希望在不中断当前应用运行的情况下看到调整效果，基于DevEco Studio提供的Hot Reload（热重载）能力，以下哪一种做法能让小林最有效地实现他的需求 （B)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">A 立即停止应用，修改代码后重新编译并部署到真机上</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">B 在不关闭应用的情况下，直接修改代码并保存，借助Hot Reload功能在真机上实时查看布局调整的效果</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">C 继续运行应用，手动重启应用后检查布局是否符合预期</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">D 使用模拟器替代真机进行调试，因为Hot Reload仅在模拟器上支持代码改动的即时生效</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">37、</span><span style="color:#4d4d4d;">hiAppEvent提供的Watcher接口，（）属性不配置，会导致编译报错，产生"ArkTS Compiler Error" (B)</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#4d4d4d;">A onTrigger</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#4d4d4d;">B name</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#4d4d4d;">C onReceive</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#4d4d4d;">D triggerCondition</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#4d4d4d;">38、一个应用项目工程中，模块依赖关系如下图所示，那么在最终编译结果.app文件中，存在的编译产物是：（A)</span></p> 
<p style="margin-left:0pt;text-align:justify;"><img alt="" height="720" src="https://i-blog.csdnimg.cn/direct/63598400236444e5a495d101603df485.png" width="1200"></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">A A.hap + D.hsp</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">B A.hap + B.har + D.hsp</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">C A.hap + B.har + C.har + D.hsp</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">D A.hap + D.hsp + C.har</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">39、WebSocket连接开发步骤描述错误的是 （E)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">A 订阅WebSocket的打开、消息接收、关闭、Error事件</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">B 创建一个WebSocket连接，返回一个WebSocket对象</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">C 导入需要的webSocket模块</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">D 使用完WebSocket连接之后，主动断开连接</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">E 调用Session.start方法开启metadata数据输出</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">F 根据URL地址，发起WebSocket连接</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">40、</span><span style="color:#43484e;">下面哪种转场效果在入场动画时，表现为从透明度为0、相对于组件正常显示位置×方向平移100vp的状态，到默认的透明度为1、相对于组件不平移的状态，且透明度动画和平移动画的动画时长均为2000ms</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#43484e;">正确答案如下（从代码块找到如下代码）</span></p> 
<p style="margin-left:0pt;text-align:left;"><strong>&nbsp;</strong><span style="color:#000000;">TransitionEffect.OPACITY.animation({duration:2000}).combine(TransitionEffect.translate({x:100}))</span></p> 
<p><span style="color:#000000;">41、</span><span style="color:#43484e;">以下示例代码中可以进行动画的属性有哪些？ (C）</span></p> 
<p><img alt="" height="720" src="https://i-blog.csdnimg.cn/direct/1eb6ac799cdf45ac826839bb05cc0b2b.png" width="1200"></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#4d4d4d;">A 1、3</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#4d4d4d;">B 2、3</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#4d4d4d;">C 1、2、3</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#4d4d4d;">D 1、2</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">42、</span><span style="color:#43484e;">在使用DevEco Studio的Profiler进行HarmonyOS应用性能优化的流程中，以下哪个步骤最恰当地描述了开发者利用Profiler工具进行性能问题识别、定位、优化及验证的完整过程 （A)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#43484e;">A 利用“Realtime Monitor”初步识别性能瓶颈，创建深度分析任务定位根因，根据分析结果优化代码，再用“Realtime Monitor”验证优化效果</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#43484e;">B 首先使用“Realtime Monitor”实时监控，观察应用资源消耗，一旦发现CPU或内存异常，直接修改代码并重新编译</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#43484e;">C 仅通过创建深度分析任务，利用perf数据详细分析性能瓶颈，修改代码后，不需再进行验证直接发布应用</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#43484e;">D 在发现应用性能不佳时，直接查看代码逻辑，凭经验修改后，利用Profiler的“Realtime Monitor”确认资源消耗是否降低</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#43484e;">43、项目中包含多个模块和数千行代码。随着开发的深入，项目中的ArkTS源代码文件逐渐积累了大量import语句，其中不乏未使用的import以及不规范的排序情况，关于DevEco Studio的编辑器的“Optimize Imports”，以下说法正确的是 （B)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#43484e;">A 可以在菜单栏中依次点击“Code” &gt; “Reformat Code”来达到优化import的目的，因为“Optimize Imports”功能已整合进“Reformat Code”中。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#43484e;">B 为了快速清理未使用的import，可以选中项目根目录，按下快捷键Ctrl+Alt+O（在macOS上为Control+Option+O），让DevEco Studio自动识别并移除所有未使用的import，并自动按照预设规则排序和合并import。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#43484e;">C 应该手动遍历每个ArkTS文件，逐一检查并删除未使用的import语句，然后按照字母顺序手动排序剩余的import。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#43484e;">D 在DevEco Studio中，没有直接的“Optimize Imports”功能，需要安装第三方插件来实现这个需求。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#43484e;">44、在使用DevEco Studio的Profiler进行HarmonyOS应用或服务内存管理优化时，以下哪个描述最准确地概述了“Allocation Insight”功能在识别和解决内存问题中的作用 （C)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#43484e;">A Allocation Insight仅提供内存分配总量的概览，帮助开发者宏观了解内存使用趋势，但对于具体泄漏或抖动问题无能为力</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#43484e;">B Allocation Insight详细展示应用运行时的每条语句柄分配记录，便于开发者逐一检查内存使用，但不提供内存泄漏的自动识别功能</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#43484e;">C Allocation Insight通过分析应用服务运行时的内存分配及使用情况，辅助定位内存泄漏、内存抖动和溢出问题，支持优化内存使用</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#43484e;">D Allocation Insight主要关注于内存碎片整理，减少内存分配的不连续性问题，对内存泄漏</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">45、项目需要同时进行应用和元服务的开发，并针对当前项目工程中的代码可以分别构建出应用和元服务的包，如何在DevEco Studio中设置不同的构建配置，达成这个目的 （B)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A 修改工程级别的AppScope/app.json5中的bundleType值为app</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B 在工程级别build-profile.json5定义两个product，将两个product的bundleType分别设置成app和atomicService</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C 在模块级别build-profile.json5定义两个target，将两个target的bundleType分别设置成app和atomicService</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D 修改工程级别的AppScope/app.json5中的bundleType值为atomicService</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">46、使用DevEco Studio进行复杂的跨设备功能开发与调试工作，期间频繁依赖本地模拟器来模拟多样化的设备环境。在这样的背景下，以下关于DevEco Studio本地模拟器所支持的规格与功能，哪一项描述是准确的 （B)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A 本地模拟器当前不支持查看HiLog以及FaultLog</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B 本地模拟器上运行的应用无需进行签名，简化了调试过程。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C 本地模拟器当前不支持单元测试框架和UI测试框架的运行</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D 本地模拟器和真机的能力没有任何差异，真机上可以支持的能力在模拟器上都可以</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">47、在一个包含多个模块（如entry、feature、service、library等）的大型HarmonyOS应用项目中，如果某个模块feature对另外一个公共库模块library有依赖，如何通过DevEco Studio正确配置项目依赖关系 （D)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A 在feature的build-profile.json5文件的dependencies字段中配置library的依赖</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B 无需配置，直接在代码中编写import xxx from ‘library’</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C 在library的oh-package.json5文件的dependencies字段中配置feature的依赖</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D 在feature的oh-package.json5文件的dependencies字段中配置library的依赖</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">48、want参数的entities匹配规则错误的是 （A)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A 调用方传入的want参数的entities为空，待匹配应用组件的skills配置中的entities不为空，则entities匹配失败。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B 调用方传入的want参数的entities不为空，待匹配应用组件的skills配置中的entities不为空且包含调用方传入的want参数的entities，则entities匹配成功。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C 调用方传入的want参数的entities为空，待匹配应用组件的skills配置中的entities为空，则entities匹配成功。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D 调用方传入的want参数的entities不为空，待匹配应用组件的skills配置中的entities为空，则entities匹配失败。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">49、HAR（Harmony Archive）是HarmonyOS提供的共享包，以下关于HAR的描述错误的是 （A)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A HAR不支持使用page页面</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B HAR不支持在设备上单独安装/运行，只能作为应用模块的依赖项被引用</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C HAR不支持引用AppScope目录中的资源。在编译构建时，AppScope中的内容不会打包到HAR中，因此会导致HAR资源引用失败</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D HAR可以作为二方库和三方库提供给其他应用使用，如果需要对代码资产进行保护时，建议开启混淆能力</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">50、应用程序开发调试过程中，经常需要安装新应用进行调测，下面安装应用操作错误的是B</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A bm install -p ohosapp.hap -r</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B hdc install -p ohosapp.hap</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C bm install -p /data/app/</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D bm install -p ohosapp.hap</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">51、一个应用有2个UIAbility组件，其module.json中abilities标签的配置如下方代码。在手机设备上，执行如下操作后：</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">1.启动UIAbility1, 然后back键返回销毁UIAbility1;</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">2.启动UIAbility2, 然后back键返回销毁UIAbility2;</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">3.启动UIAbility2, 然后back键返回销毁UIAbility2;</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">进入多任务列表，能看看到该应用的几个任务视图：（A)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A 1个</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B 0个</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C 3个</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D 2个</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">52、</span><span style="color:#43484e;">某个应用开发了一个UIAbilityA，其启动模式是specified，并且对应的AbilityStage的实现如下：（D)</span></p> 
<p style="margin-left:0pt;text-align:left;"><img alt="" height="720" src="https://i-blog.csdnimg.cn/direct/3c9d78eef32f4c609b5a292dc584c972.png" width="747"></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">A 2个</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">B 4个</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">C 1个</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">D 3个</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">53、通过aa工具拉起com.example.test的EntryAbility，并传参给EntryAbility，具体参数是number类型的[key1, 1] [key2,2] 和string类型的[key3, testString] [key4,''],那边下面那个aa 命令是正确的：（D)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">A aa start -b com.example.test -a EntryAbility --pi key1 1 --pi key2 2 --ps key3 testString --ps key4</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">B aa start -b com.example.test -a EntryAbility --pi key1 1 --pi key2 2 --ps key3 testString --psn key4”</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">C aa start -b com.example.test -a EntryAbility --pi key1 1 key2 2 --ps key3 testString --psn key4</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">D aa start -b com.example.test -a EntryAbility --pi key1 1 --pi key2 2 --ps key3 testString --psn key4</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">54、应用发生崩溃，（）接口可以获取到崩溃时调用栈 （A)A hiAppEventB hiLogC hiDebugD hiTraceMeter</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">55、</span><span style="color:#4d4d4d;">我们需要避免在逐帧调用的接口中执行耗时操作，下面哪个选项不属于上述的接口 (D）</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">A. onTouch</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">B. onAreaChange</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">C. onScroll</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">D. aboutToReuse</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">56、关于ArkUI的ForEach和LazyForEach，下列说法错误的是？（C)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">A LazyForEach需要配合cachedCount和组件复用一起使用，以达到性能的最优表现。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">B ForEach和LazyForEach会根据定义的键值生成规则为数据源的每个数组项生成唯一键值，并创建相应的组件。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">C 长列表滚动场景，优先使用ForEach。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">D 当在滚动容器中使用了LazyForEach，框架会根据滚动容器可视区域按需创建组件，当组件滑出可视区域外时，框架会进行组件销毁回收以降低内存占用。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">57、关于自动化测试描述正确的是：（A)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">A XTS子系统是认证测试套件的集合，当前包括acts（application compatibility test suite）应用兼容性测试套件，后续会拓展dcts（device compatibility test suite）设备兼容性测试套件等。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">B DT(开发者测试)就是UT，可看护的范围包括边界值问题、空指针或赋值错误，内部业务逻辑问题等等。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">C 自动化测试因提高效率，减少重复工作的特性而被广泛采用；自动化测可以替代手动测试在处理复杂、难以预测的用户交互或特殊边界条件。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">D Fuzz测试就是通过构造不规则的输入，从而触发程序的某种bug；Fuzz测试属于白盒测试。Fuzz测试也叫做模糊测试，通过输入非法字段，并观察软件是否异常来实现。一方面可以通过向软件输入非法字段，另一方面也可以通过向网络服务发送异常报文。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">58、以下关于HAP（Harmony Ability Package）说法正确的是（B）</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">A 应用工程编出的app文件中，只能包含一个hap文件。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">B 应用工程如果包含多个Module，在应用市场上架时，会将多个.hap文件打包成一个.app文件。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">C HAP是应用安装和运行的基本单位，在DevEco Studio工程目录中，一个HAP对应一个Module。应用打包时，所有的Module都只能生成.hap文件。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">D DevEco Studio会在编译构建时，不需要对HAP进行一致性校验。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">59、某App有A、B、C、D四个团队分别负责ModuleA、ModuleB、ModuleC和ModuleD四个业务模块，随着业务的发展，ModuleA需要跳转到ModuleB、ModuleC的页面，ModuleB需要跳转到ModuleC、ModuleD的界面，ModuleC需要跳转到ModuleA的界面，ModuleD需要跳转到ModuleB和ModuleC的界面。由于复杂的依赖关系，导致一旦有变化就需要知会各个团队，所以该团队的架构师想要解耦各个业务模块，以下哪些做法是不推荐的（C）</span></p> 
<p style="margin-left:0pt;text-align:left;"><img alt="" height="527" src="https://i-blog.csdnimg.cn/direct/18ce35fb25b5463097ff6d32cdcd4afe.png" width="1200"></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A 在RouterModule中采用路由表方式解耦各个业务模块。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B 采用RouterModule作为中介者并用动态import解耦各个业务模块。 </span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C 采用静态import方式引入对应跳转的页面。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D 可以采用Navigation作为页面导航根容器，将其放在entry中，其他Module的页面作为Navigation的子页面 </span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">60、在moduleA（HAP类型）中有一个图片名为image.png，在moduleB（HAR类型）也存在一个图片名为image.png，而moduleA依赖于moduleB，那么在moduleA的编译产物hap包中，image.png存在情况是：(B)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A 仅存在moduleB的image.png</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B 仅存在moduleA的image.png</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C 两者都存在</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D 两者都不存在</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">61、关于代理提醒开发使用的接口是 （C)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A 使用startWork申请任务，使用stopwork取消任务，使用getWorkStatus获取任务状态</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B 使用startBackgroundRunning申请任务，使用stopBackcroundRunning取消任务</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C 使用publishReminder发布，个提醒类通知，使用cancelReminder取消一个指定的提醒类通知</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D 使用requestSuspendDelay电请任务，使用getRemainngDelayTime获取任多剩余时间</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">62、</span><span style="color:#333333;">在方舟字节码的函数调用规范中，前三个参数表示的含义分别是 （C)</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">A this、函数对象本身、new.Target</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">B new.Target、函数对象本身、this</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">C 函数对象本身、new.Target、this</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">D new.Target、this、函数对象本身</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">63、</span><span style="color:#4d4d4d;">从桌面冷启动如下应用代码，点击Change按钮5次，整个过程中，代码中的2条log依次出现的次数是：（C)</span></p> 
<p style="margin-left:0pt;text-align:justify;"><img alt="" height="720" src="https://i-blog.csdnimg.cn/direct/a3da6dca97b1488cb739452f24ad436a.png" width="720"></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">A 6,0</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">B 2,4</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">C 1,0</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">D 1,5</span></p> 
<p><span style="color:#333333;">64、</span><span style="color:#43484e;">以下哪份代码可以实现下图Grid布局</span></p> 
<p><img alt="" height="720" src="https://i-blog.csdnimg.cn/direct/75e6292820c84e158686c97bc8e1479d.png" width="815"></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#43484e;">正确答案:</span><span style="color:#000000;">通过GridLayoutOptions</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">65、在HarmonyOS应用开发中，当开发者遇到需要分析Release版本应用的崩溃或异常堆栈信息时，为了准确地将堆栈追踪信息对应到源代码的具体位置，以下哪个描述是正确的做法或理解（B）</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A 开发者需手动将Release构建生成的so文件与源代码进行映射，配合第三方工具进行堆栈信息还原，虽然过程繁琐，但最终能定位到问题代码位置</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B DevEco Studio提供的Release应用堆栈解析功能，要求开发者在遇到问题时，需上传构建产物中的特定文件（如so、source map、nameCache等）到指定工具或界面，借助这些文件辅助解析堆栈信息，实现从Release堆栈到源码的映射，便于快速定位问题</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C DevEco Studio通过集成的Release应用堆栈解析功能，自动利用构建时产生的so文件、source map文件、nameCache文件等，无需额外操作即可直接在Release应用中提供详细的源码级堆栈追踪信息</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D 因为Release应用经过优化和去除Debug信息，直接从堆栈跟踪到源代码行号是不可能的，开发者只能依靠日志信息手工推测问题所在</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">66、小李正在使用DevEco Studio进行HarmonyOS应用的开发工作，他需要对一个频繁被调用的函数calculateData()进行重构，为了帮助小李高效地找到calculateData()函数的所有引用位置，并确保重构时考虑周全，以下哪个步骤是正确的使用DevEco Studio的“Find Usages”功能的操作方法 （C)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A 小李应当在项目目录树中找到calculateData()函数所在的文件，直接双击打开文件，然后逐行扫描代码以手动查找该函数的所有调用位置。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B 小李应该在菜单栏中选择“Navigate” &gt; “Class”来打开类浏览器，从中找到calculateData()函数，并在此界面中手动检查所有引用。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C 小李只需将光标定位在calculateData()函数名上，右键点击并选择“Find Usages”，或者直接使用快捷键Alt + F7（macOS为Option + F7），DevEco Studio会自动列出该函数在项目中的所有引用位置。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D 小李应将光标置于calculateData()函数的名称上，按下Ctrl + Shift + F（macOS为Command + Shift + F）全局搜索该函数名，然后在搜索结果中筛选出真正的调用位置。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">67、小李正在使用DevEco Studio进行HarmonyOS应用的开发工作，他需要对一个频繁被调用的函数calculateData()进行重构，为了帮助小李高效地找到calculateData()函数的所有引用位置，并确保重构时考虑周全，以下哪个步骤是正确的使用DevEco Studio （C)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A小李应当在项目目录树中找到calculateData()函数所在的文件，直接双击打开文件，然后逐行扫描代码以手动查找该函数的所有调用位置。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B小李应该在菜单栏中选择“Navigate” &gt; “Class”来打开类浏览器，从中找到calculateData()函数，并在此界面中手动检查所有引用。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C小李只需将光标定位在calculateData()函数名上，右键点击并选择“Find Usages”，或者直接使用快捷键Alt + F7（macOS为Option + F7），DevEco Studio会自动列出该函数在项目中的所有引用位置。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D小李应将光标置于calculateData()函数的名称上，按下Ctrl + Shift + F（macOS为Command + Shift + F）全局搜索该函数名，然后在搜索结果中筛选出真正的调用位置。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">68、在使用DevEco Studio的Profiler进行HarmonyOS应用或服务性能分析时，面对应用出现卡顿、加载慢等性能瓶颈问题，以下哪个描述最贴切地说明了“Time场景分析任务”的功能及其对开发者优化流程的帮助（B)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A Time场景分析任务在应用运行时，通过显示所有函数执行的耗时排序列表，辅助开发者手动对比寻找耗时最短的函数进行优化</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B Time场景分析任务展示热点区域内的CPU和进程级调用栈耗时情况，支持代码跳转，助力开发者快速定位并优化耗时较长的代码段</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C Time场景分析任务专注于内存管理，帮助开发者监控应用内存泄漏，但对解决卡顿和加载耗时问题帮助有限</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D Time场景分析任务仅提供应用/服务运行时的CPU使用率概览，帮助开发者粗略判断性能瓶颈，但不提供深入分析</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">69、开发者小林正在使用DevEco Studio开发一款HarmonyOS应用，并在真机上进行调试。他在运行应用的过程中突然发现一处UI布局需要微调，希望在不中断当前应用运行的情况下看到调整效果，基于DevEco Studio提供的Hot Reload（热重载）能力，以下哪一种做法能让小林最有效地实现他的需求 （B)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A 立即停止应用，修改代码后重新编译并部署到真机上</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B 在不关闭应用的情况下，直接修改代码并保存，借助Hot Reload功能在真机上实时查看布局调整的效果</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C 继续运行应用，手动重启应用后检查布局是否符合预期</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D 使用模拟器替代真机进行调试，因为Hot Reload仅在模拟器上支持代码改动的即时生效</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">70、项目需要为不同的设备形态（如手机、智能手表）提供定制化构建。请说明如何在DevEco Studio中设置不同的构建配置，以生成针对不同设备的hap包？（B)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A 在工程级别build-profile.json5定义多个product，在每个product的config/deviceType中定义不同的设备类型</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B 在模块级别build-profile.json5定义多个target，在每个target的config/deviceType中定义不同的设备类型</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C 在工程级别build-profile.json5定义多个product，在每个product的config/distributionFilter中定义不同的设备类型</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D 在模块级别build-profile.json5定义多个target，在每个target的config/distributionFilter中定义不同的设备类型</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">71、项目中涉及多个类的继承与重写。为了快速实现子类对父类方法的重写，小华想利用DevEco Studio提供的便捷功能来提高开发效率。他了解到，通过一个特定的操作流程，可以直接依据父类的模板生成子类中需要重写的方法代码，而无需手动编写完整方法体，在DevEco Studio中，如何正确使用Override Methods功能来快速生成子类需要重写的方法代码 （D）</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A 在项目结构视图中找到目标子类，双击打开后直接在代码编辑区输入重写方法的签名，DevEco Studio将自动完成剩余代码。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B 将光标定位到子类的定义处，按下Ctrl+O（或右键单击选择Generate... &gt; Override Methods），在弹出的对话框中选择要重写的方法，点击OK完成生成。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C 通过菜单栏File &gt; Settings，配置Override Methods快捷方式，之后在代码中仅需选中父类方法名，即可自动在子类中生成重写代码。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D 将光标放置于任何代码行，按下Ctrl+B，然后在弹出菜单中选择Override Methods，之后勾选需要重写的方法并确认。</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">72、</span><span style="color:#333333;">下面的配置存在有几处错误（ ）module.json5配置文件 （D)</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">A.1</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">B.4</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">C.2</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">D.3</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">73、在UIAbility的onCreate生命周期中通过EventHub的on注册"event1"和"event2"事件。 （C)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">import { hilog } from '@kit.PerformanceAnalysisKit';</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">import { UIAbility, Want, AbilityConstant } from '@kit.AbilityKit';</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">const DOMAIN_NUMBER: number = 0xFF00;</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">const TAG: string = '[EventAbility]';</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">export default class EntryAbility extends UIAbility {<!-- --></span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">onCreate(want: Want, launchParam: AbilityConstant.LaunchParam): void {<!-- --></span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">// 获取UIAbility实例的上下文</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">let context = this.context;</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">// 获取eventHub</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">let eventhub = this.context.eventHub;</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">// 执行订阅操作</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">eventhub.on('event1', this.eventFunc);</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">eventhub.on('event2', this.eventFunc);</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">hilog.info(DOMAIN_NUMBER, TAG, '%{public}s', 'Ability onCreate');</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">}</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">// ...</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">eventFunc(argOne: Context, argTwo: Context): void {<!-- --></span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">hilog.info(DOMAIN_NUMBER, TAG, 'receive. ' + `${argOne}, ${argTwo}`);</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">return</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">}</span></p> 
<p style="margin-left:0pt;text-align:left;"><img alt="" height="764" src="https://i-blog.csdnimg.cn/direct/2f49ba964fb54389b515ca01c0b2b990.png" width="720"></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">74、</span><span style="color:#333333;">当标记了@Reuseable的自定义组件实现了组件复用后，这个组件的复用范围是什么 （B)</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">A 整个应用内都可以复用</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">B 标记了@Reuseable的自定义组件的父组件范围内</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">C 整个页面都可以复用</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">D 标记了@Reuseable的自定义组件的外层容器节点范围内</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">75、某App依赖了3个ohpm库，这3个库占用的体积都比较大。在App的技术架构中，有多个hap和多个hsp均依赖这3个库，为了减少app的首包大小，以下哪些做法是无效的？(C)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">A 将3个ohpm库分别封装成3个hsp，并对外提供必要的接口。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">B 将某些特性做成按需加载模块，若这3个ohpm仅在按需加载模块里面使用，则将其打包在按需加载模块中。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">C 将这3个ohpm库封装到har包中，并对外提供必要的接口。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">D 将3个ohpm库封装成1个hsp，并对外提供必要的接口。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">76、关于短时任务开发使用的接口是（A）</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A 使用requestSuspendDelay申请任务，使用getRemainingDelayTime获取任务剩余时间</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B 使用startBackgroundRunning申请任务，使用stopBackgroundRunning取消任务</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C 使用publishReminder发布一个提醒类通知，使用cancelReminder取消一个指定的提醒类通知</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D 使用startWork申请任务，使用stopWork取消任务，使用getWorkStatus获取任务状态</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">77、</span><span style="color:#43484e;">开发者小张正在使用DevEco Studio开发一款HarmonyOS应用，他遇到了一个仅在应用实际运行环境中出现的问题，需要调试己部署在设备上的应用以定位问题根源，为了能够在应用已经运行的情况下介入调试，小张应该采用哪种调试方法</span></p> 
<p style="margin-left:0pt;text-align:left;">&nbsp;<span style="color:#000000;">B、Attach Debugger to Process，这允许他连接到正在运行的应用进程进行调试。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">78、下面持续交付&amp;持续部署描述哪个是正确的 (B)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A 持续部署是将代码库中的任何更改都应该自动且快速地投入生产环境。持续部署等同于持续交付。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B 持续交付(CD, Continuous Delivery): 指的是，频繁的将软件的新版本，交付给质量团队或者用户，以供评审。如果评审通过，代码就进入生产阶段。它强调的是，不管怎么更新，软件是随时随地可以交付的。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C 在持续交付实践中，要考虑处理故障回滚和紧急修复，以确保系统在出现问题时能够快速恢复和修复。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D 持续交付可以随时随地部署到生产环境</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">79、某业务团队的架构师发现某个特性用的频率比较少，但是这个特性占用空间资源还是比较大的。为了减少首包下载体积，准备将该特性解耦出来，并对外提供API方便主模块调用。以下说法正确的是 (D)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A 将该特性做成hap包，通过Ability组件暴露出来给主app使用</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B 将该特性做成动态加载的har包，暴露接口给主模块使用。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C 锦该特性做成H5模块，通过web组件加截远程资源使用</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D 将该特性做成按需加载的hsp包，暴露接口给主模块使用</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">80、</span><span style="color:#333333;">如果想让outer button响应事件，hitTestBehavior该怎么配 （C)</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">A HitTestMode.None</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">B HitTestMode.Default</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">C HitTestMode.Transparent</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">D HitTestMode.Block</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">81、在使用DevEco Studio进行混合语言开发时，开发者小李通过Napi引用了Native 接口的文件（例如d.ts文件）。他想要直接从这些接口跳转到其对应的C/C++函数实现处进行代码审查。请从以下选项中选择最合适的操作步骤来帮助小李实现这一目标 （A)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">A 在声明或引用了Native接口的文件中，比如d.ts文件，小李可以直接选中接口名称，右键点击并在弹出的菜单中选择“Go To &gt; Implementation(s)”（转到&gt; 实现）。还可以使用快捷键Ctrl+Alt+B；如果是macOS用户，则使用Command+Option+B，直接跳转到对应的C/C++函数实现位置。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">B 小李可以将鼠标光标置于想要查看实现的接口名称上，按下鼠标右键，在出现的上下文菜单中寻找并点击“Find Usages”（查找用法），在结果中筛选出C/C++的实现。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">C 为了查看C/C++函数实现，小李必须先切换到DevEco Studio的C/C++开发环境视图，之后在项目的资源管理器中找到对应的C/C++源文件手动打开，才能查看函数代码</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">D 小李应该打开包含TypeScript接口声明的文件，然后手动在项目中搜索相应的C/C++源文件，逐个检查以找到匹配的函数实现</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">82、下面持续集成描述哪项是错误的：（D)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">A Martin Fowler说过，”持续集成并不能消除Bug，而是让它们非常容易发现和改正。”</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">B 持续集成在大型项目（有几十个项目组）也能应用，即便是项目组开发进度不统一也没问题</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">C 持续集成(CI, Continuous Intergation): 指频繁的，一天多次将代码集成到主干。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">D 持续集成就是持续编译，二者异曲同工</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">83、关于延迟任务开发使用的接口是 （D)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A 使用requestSuspendDelay申请任务，使用getRemainingDelayTime获取任务剩余时间</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B 使用publishReminder发布一个提醒类通知，使用cancelReminder取消一个指定的提醒类通知</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C 使用startBackgroundRunning申请任务，使用stopBackgroundRunning取消任务</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D 使用startWork申请任务，使用stopWork取消任务，使用getWorkStatus获取任务状态</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">84、开发者张工想要高效地管理HarmonyOS设备中的文件，包括查看文件列表、进行文件搜索、新建及删除操作，以及在设备与PC间传输文件而无需使用命令行工具。以下哪个选项最能准确概括张工能通过哪个工具直接在DevEco Studio界面完成上述所有操作 （C)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A DevEco Studio的Terminal面板</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B DevEco Studio的Project Explorer</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C DevEco Studio的Device File Browser</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D DevEco Studio的Log面板</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">85、开发者在编写ArkUI代码时，想要提前预览下所编写的组件的效果，下述哪个组件可以使用DevEco Studio Previewer正常预览？（A)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A @Preview @Component struct TitleSample { @StorageProp('title') title: string = 'PlaceHolder'; build() { Text(this.title) } }</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B @Preview @Component struct LinkSample { @Link message: string; build() { Text(this.message) } }</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C @Preview @Component struct ConsumeSample { @Consume name: string; build() { Text(this.name) } }</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D import { add } from 'libnative.so'; @Preview @Component struct NativeSample { count: number = add(1, 2); build() { Text(`current count is ${this.count}`) } }</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">86、关于代码门禁理解正确的是：（A)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A 代码门禁则是在代码合并之前就验证代码来保护主干分支的完整性。通过这种方式，可以保护主分支代码避免因合码导致的构建中断，以确保 master 分支代码始终是可部署的，并且不会因明显的错误而影响到你正在并行开发的同事工作。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B 标准 CI 构建是在代码合并后检查已提交代码的功能完整性，这种方法会导致代码合并到master后编译失败导致没有可用版本部署。通过提高滚动构建的频度就可以代替代码门禁，保障代码主干及时发现并解决问题。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C 门禁级检查的范围和版本级检查的范围保持一致，尽可能多的在MR门禁阶段就拦截防护住问题，保障问题可以及时清理掉。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D 代码门禁是一项代码质量保障措施。目的是要求开发人员提交的代码必须满足一些要求才能合入代码仓库。门禁必须强制要求包括编译通过、单元测试覆盖率达标、代码静态检查无告警、全量功能测试用例、DFX专项测试都通过。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">87、</span><span style="color:#000000;">下面关于方舟字节码格式PREF_IMM16_V8_V8描述正确的是(A）</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">A 16位前缀操作码，16位立即数，2个8位寄存器</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">B 8位操作码，8位立即数，2个8位寄存器</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">C 8位操作码，8位立即数，16位id，8位寄存器</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">D 16位前缀操作码，16位立即数，8位寄存器</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#43484e;">88、Text组件不支持以下哪种使用方式？(C）</span></p> 
<p style="margin-left:0pt;text-align:left;"><img alt="" height="720" src="https://i-blog.csdnimg.cn/direct/59270794f5004cee81fec7a4d81f39e1.png" width="1184"></p> 
<p style="margin-left:0pt;text-align:left;"><img alt="" height="430" src="https://i-blog.csdnimg.cn/direct/6de741930aec4de8bd55d94525fabf82.png" width="1200"></p> 
<p style="margin-left:0pt;text-align:left;"><img alt="" height="543" src="https://i-blog.csdnimg.cn/direct/7e1208aef9da473a8882b0443cbfe226.png" width="1200"></p> 
<p><img alt="" height="412" src="https://i-blog.csdnimg.cn/direct/31a9370718324bbcac220cfc4449d8f3.png" width="1200"></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#43484e;">89、当前您在开发一个ArkTS、Stage模型的HarmonyOS工程，关于当前ArkTS工程目录结构，下列选项说法错误的是？（D)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#43484e;">A entry &gt; src &gt; main &gt; module.json5：Stage模型模块配置文件，主要包含HAP的配置信息、应用在具体设备上的配置信息以及应用的全局配置信息。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#43484e;">B AppScope &gt; app.json5：应用的全局配置信息。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#43484e;">C oh-package.json5：描述依赖配置，如：依赖覆盖（overrides）、依赖关系重写（overrideDependencyMap）和参数化配置（parameterFile）等。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#43484e;">D build-profile.json5：应用级编译构建任务脚本。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#43484e;">90、当您开始开发一个应用/服务时，首先需要根据工程创建向导，创建一个新的工程，工具会自动生成对应的代码和资源模板。关于新建工程，下列选项说法正确的是？（A)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#43484e;">A Compatible SDK是兼容的最低API Version。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#43484e;">B 应用包名（Bundle name）必须为以点号（.）分隔的字符串，且至少包含三段，每段中仅允许使用英文字母、数字，如“com.example.myapplication ”。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#43484e;">C 工程文件本地存储路径（Save location）允许包含中文字符。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#43484e;">D 创建用于Lite Wearable设备的工程，可以选择Native C++工程模板。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#43484e;">91、在编译构建HAP时，会从HAP模块及依赖的模块中收集资源文件，如果不同模块下的资源文件出现重名冲突时，会按照优先级进行覆盖，现在有一个HAP依赖了两个HAR，依赖配置如下所示：在资源覆盖时，以下优先级排序正确的是（A）</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#43484e;">A AppScope&gt;HAP包自身模块&gt;dayjs模块&gt;lottie模块</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#43484e;">B AppScope&gt;HAP包自身模块&gt;lottie模块&gt;dayjs模块</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#43484e;">C HAP包自身模块&gt;dayjs模块&gt;lottie模块&gt;AppScope</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#43484e;">D HAP包自身模块&gt;lottie模块&gt;dayjs模块&gt;AppScope</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">92、</span><span style="color:#333333;">作为一个应用开发者，想搭建运维平台，想在应用内定时读取当前的内存信息，可以通过（）接口来实现。（C)</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">A hiChecker</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">B hiAppEvent</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">C hiDebug</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">D hiLog</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">93、开发者小李遇到了一个复杂的问题，该问题仅在特定的代码执行路径上出现，且难以复现。他使用的是C++进行核心算法开发，代码的逻辑密集且对性能要求极高，DevEco Studio为C/C++开发者提供的高级调试能力，以下哪个能力可以帮助小李查看代码历史执行路径，回溯到关键的变量状态 （B)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">A 代码静态分析：提供静态代码检查工具，通过语法和逻辑分析帮助预防潜在错误，但不涉及运行时问题定位</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">B 反向调试能力：允许开发者在调试过程中回退回到之前的代码行或断点，不仅查看过去的堆栈信息，还能重现历史的全局、静态和局部变量状态，帮助深入理解代码历史行为，特别是对于复杂逻辑和难以复现的bug定位至关重要</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">C 实时代码修改与运行时效果查看：支持在调试过程中修改代码并立即查看修改效果，适用于快速迭代，但不聚焦于问题追溯</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">D 传统调试模式：仅允许在当前断点暂停代码执行，查看调用堆栈和当前变量信息，但无法追溯历史执行状态</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">94、小华正在使用DevEco Studio开发一款基于HarmonyOS的ArkUI应用，该应用需要实现一个功能，即当用户点击按钮时，通过ArkTS/JS API调用系统的分享功能。小华对具体的API调用细节不太熟悉，如何通过DevEco Studio快速查阅相关的API文档。（B)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">A 小华在代码编辑区直接键入分享功能相关的API调用代码，如 arkui.getShare()，然后按F1键，期望编辑器能自动跳转到该API的文档页面。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">B 小华将鼠标悬停在编辑器中已经键入或打算键入的API调用（例如 @system.router.push）上，等待编辑器自动弹出悬浮提示框，显示该API的简要信息和不同版本参数说明。随后，点击提示框右下角的“Show in API Reference”链接，直接跳转到详尽的API参考文档页面。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">C 小华右键点击代码编辑区，选择“Find Usages”选项，试图从其他地方引用该API的实例中学习如何使用分享功能。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">D 小华应该先停止编码工作，打开浏览器，手动搜索关键词“HarmonyOS ArkUI 分享API”，在官方网站的文档页面中寻找相关API的使用方法。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">95、根据上面代码，以下解释正确的是 （D)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">A 在ChangeMode里改变mode的值，会触发其父组件Page的Title内容的切换。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">B 为了避免@Prop的拷贝，可以优化使用@Link，在该例子中行为和@Prop一样。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">C 本例子可以运行起来，所以代码没有问题。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">D 在自定义组件Page的build方法里改变状态变量是非法操作，可能导致未定义的异常UI行为。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">96、以下哪些赋值语句在ArkTS中是合法 （D)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">class A {<!-- --></span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">v: number =0;</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">class B extends A {<!-- --></span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">u: string =",</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">class C {<!-- --></span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">v: number = 0;</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">let a1: A = new C();</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">let a2: A = new B();</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">let a3: B = new A();</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">let a4: C = new B();</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A a4</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B a3</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C a1</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D a2</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">97、下述代码片段，使用了哪些基于web的性能优化手段 (B)</span></span></p> 
<p style="margin-left:0pt;text-align:justify;"><img alt="" height="720" src="https://i-blog.csdnimg.cn/direct/7ee854f7ce604cb7b47dedda30200b8d.png" width="960"></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">98、开发者开发了一个应用，该应用只有一个hap包，其module.json5中abilities的配置如下 所示，包含1个UIAbility(无Web组件)、1个FormExtensionAbility组件、 1个WorkSchedulerExtensionAbility组件，那么该应用在运行过程中， 最多会存在几个应用进程： （C)</span></p> 
<p style="margin-left:0pt;text-align:left;"><img alt="" height="720" src="https://i-blog.csdnimg.cn/direct/9711c6a482e94f02ba2ab3d9410dd88d.png" width="988"></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">99、图片大小跟Image组件设置的宽高不匹配时，使用objectFit属性，不会缩放图片的类型时下面哪个选项（A)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A CENTER</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B Fill</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C Contain</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D Cover</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">100、以下哪些赋值语句在ArkTS中是合法。（A）</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><img alt="" height="720" src="https://i-blog.csdnimg.cn/direct/0b3727c8506f4b0fb9233fd39e750726.png" width="947"></p> 
<p><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">101、在刷新Image组件内容时，如果观察到画面会闪一下白块，要怎样优化才能避免白块儿出现，同时又不会卡住画面？（D）</span></span></p> 
<p><img alt="" height="720" src="https://i-blog.csdnimg.cn/direct/68059227d7c14dd191e5a7c943577c74.png" width="1123"></p> 
<p style="margin-left:0pt;text-align:left;"><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">102、用于实现捏合控制的手势是如下哪个选项：（A)</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><img alt="" height="720" src="https://i-blog.csdnimg.cn/direct/476dbfc73cc243428b8febe667b56ae2.png" width="1163"></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u65fff134"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">103、使用DevEco Studio进行复杂的跨设备功能开发与调试工作，期间频繁依赖本地模拟器来模拟多样化的设备环境。在这样的背景下，以下关于DevEco Studio本地模拟器所支持的规格与功能，哪一项描述是准确的（B）</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ub92079b7"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">A本地模拟器当前不支持查看HiLog以及FaultLog</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u649cc709"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">B本地模拟器上运行的应用无需进行签名，简化了调试过程。</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u37c9dbb8"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">C本地模拟器当前不支持单元测试框架和UI测试框架的运行</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ud7829691"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">D本地模拟器和真机的能力没有任何差异，真机上可以支持的能力在模拟器上都可以</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u2d1ff775"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;"><a name="u85411286"></a>104、通过aa工具拉起com.example.test的EntryAbility，并传参给EntryAbility，具体参数是number类型的[key1, 1] [key2,2] 和string类型的[key3, testString] [key4,''],那边下面那个aa 命令是正确的：（D)</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u8eb7847e"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;"><a name="u6a558bc2"></a>A aa start -b com.example.test -a EntryAbility --pi key1 1 --pi key2 2 --ps key3 testString --ps key4</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ub8a6016a"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">B aa start -b com.example.test -a EntryAbility --pi key1 1 --pi key2 2 --ps key3 testString --psn key4”</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u8691bb5c"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">C aa start -b com.example.test -a EntryAbility --pi key1 1 key2 2 --ps key3 testString --psn key4</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u4cfc557b"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">D aa start -b com.example.test -a EntryAbility --pi key1 1 --pi key2 2 --ps key3 testString --psn key4</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u02424142"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;"><a name="u28ff1453"></a>105、通过aa工具拉起com.example.test的EntryAbility，并传参给EntryAbility，具体参数是number类型的[key1, 1] [key2,2] 和string类型的[key3, testString] [key4,''],那边下面那个aa 命令是正确的：（D)</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ue513b7fe"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;"><a name="uad8ca0e5"></a>A aa start -b com.example.test -a EntryAbility --pi key1 1 --pi key2 2 --ps key3 testString --ps key4</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="udade97d9"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">B aa start -b com.example.test -a EntryAbility --pi key1 1 --pi key2 2 --ps key3 testString --psn key4”</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ucb73b612"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">C aa start -b com.example.test -a EntryAbility --pi key1 1 key2 2 --ps key3 testString --psn key4</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u5731e218"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">D aa start -b com.example.test -a EntryAbility --pi key1 1 --pi key2 2 --ps key3 testString --psn key4</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="uca0c9d61"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;"><a name="ue8f9f8bd"></a>106、如果想要设置输入框的自定义键盘，可以使用下面的哪个接口?（A)</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u61dce46e"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">A customKeyboard</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ud63aeca2"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">B showCounter</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="uf3fd8945"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">C showUnit</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u38bf624c"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">D enterKeyType </span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ub2929ed2"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;"><a name="uf04a606f"></a>107、图片大小跟lmage组件设置的宽高不匹配时，使用objectFit属性，不会缩放图片的类型</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u8a0b8a1e"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">是下面哪个选项（A）</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ubc963950"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">A Center</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u1f0aac52"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">B Cover</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u3cc74b78"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">C Fill</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ua304cd23"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">D Contain</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u4b99454a"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;"><a name="u238b34a6"></a>108、以下 Websocket&nbsp;连接开发的步骤顺序，描述错误的是 ？()</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u2fbb5a29"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">答案：调用 Session.start&nbsp;方法开启 metadata&nbsp;数据输出</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ud0f26c56"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;"><a name="u40cbbf39"></a>109、以下代码中，懒加载生效的是&nbsp;（&nbsp;C&nbsp;）</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ufe3f30e5"></a>&nbsp;</p> 
<p style="margin-left:0pt;text-align:left;"><a name="ud7bced2b"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">A.</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="uf9dcd3ae"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">"""@Entry</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ue99259ef"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">@Component</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ue32a92c1"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">struct LazyTest {<!-- --></span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="uf0d8f7c2"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">&nbsp;&nbsp;data: MyDataSource&lt;number&gt; = new MyDataSource&lt;number&gt;()</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u3c9da206"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">&nbsp;&nbsp;build() {<!-- --></span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ud011f027"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">&nbsp;&nbsp;&nbsp;&nbsp;List() {<!-- --></span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u1aa2a1fd"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ListItemGroup() {<!-- --></span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u66bd097d"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;LazyForEach(this.data, (item:number)=&gt;{<!-- --></span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u7d9bfbb7"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ListItem() {<!-- --></span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u17b4f007"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Text(item.toString())</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u0f286edc"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.width('100%')</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u6ebf2bdc"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.height(100)</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u72c907a0"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u54638593"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;})</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u9ed8e5b2"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u0968d0f0"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">&nbsp;&nbsp;&nbsp;&nbsp;}.width(""""100%"""").height(""""100%"""")</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u6b5ce6c1"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">&nbsp;&nbsp;}</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ud8c3d187"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">}"" "</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u451f09be"></a>&nbsp;</p> 
<p style="margin-left:0pt;text-align:left;"><a name="u8d4d2fee"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">B.</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u4dec469d"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">"""@Entry</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u55fa8fd8"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">@Component</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u8fc1d91c"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">struct LazyTest {<!-- --></span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="udeb206c0"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">&nbsp;&nbsp;data: MyDataSource&lt;number&gt; = new MyDataSource&lt;number&gt;()</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="uea5233c3"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">&nbsp;&nbsp;build() {<!-- --></span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u8679774b"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">&nbsp;&nbsp;&nbsp;&nbsp;Scroll() {<!-- --></span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u85c6f6c3"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;List() {<!-- --></span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u16b31514"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;LazyForEach(this.data, (item:number)=&gt;{<!-- --></span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ueca0550e"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ListItem() {<!-- --></span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u488ec429"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Text(item.toString())</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u3d978b86"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.width('100%')</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u0791cd2b"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.height(100)</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="uee9a65f4"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u061f6f6a"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;})</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u16b15784"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u8ad59785"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">&nbsp;&nbsp;&nbsp;&nbsp;}.width(""""100%"""").height(""""100%"""")</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u4455c1fd"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">&nbsp;&nbsp;}</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u64bc00d7"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">}"""</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ufafee343"></a>&nbsp;</p> 
<p style="margin-left:0pt;text-align:left;"><a name="u02c22305"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">C.</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u9e588e3f"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">"""@Entry</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u90c1d27a"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">@Component</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ud37e02d7"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">struct LazyTest {<!-- --></span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u8cf2f718"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">&nbsp;&nbsp;data: MyDataSource&lt;number&gt; = new MyDataSource&lt;number&gt;()</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ud2c2ffd1"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">&nbsp;&nbsp;build() {<!-- --></span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="uf775c716"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">&nbsp;&nbsp;&nbsp;&nbsp;List() {<!-- --></span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="uf5492803"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ListItem() {<!-- --></span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="udb880c0e"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Column() {<!-- --></span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u07918ec1"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;LazyForEach(this.data, (item: number) =&gt; {<!-- --></span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ub188fc1a"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Text(item.toString())</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ubbfe622e"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.width('100%')</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u88819618"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.height(100)</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u2b8b4c92"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;})</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u07e32560"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u367d6440"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u7412a443"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">&nbsp;&nbsp;&nbsp;&nbsp;}.width(""""100%"""").height(""""100%"""")</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u2f4122b0"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">&nbsp;&nbsp;}</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ue1ad435c"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">}"""</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u5dacd405"></a>&nbsp;</p> 
<p style="margin-left:0pt;text-align:left;"><a name="u83da7bb2"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">D.</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u8c343cdd"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">"""@Entry</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u9c23859b"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">@Component</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ucdab665c"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">struct LazyTest {<!-- --></span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="uacbfdba1"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">&nbsp;&nbsp;data: MyDataSource&lt;number&gt; = new MyDataSource&lt;number&gt;()</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u9b0b04f0"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">&nbsp;&nbsp;build() {<!-- --></span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ua1d47f55"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">&nbsp;&nbsp;&nbsp;&nbsp;Scroll() {<!-- --></span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u65cb6af9"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;List() {<!-- --></span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="uaf40748c"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;LazyForEach(this.data, (item:number)=&gt;{<!-- --></span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="uc5ddc2b7"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ListItem() {<!-- --></span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u3ab86910"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Text(item.toString())</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ubc44c6a3"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.width('100') </span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u7978677f"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;"><a name="u2a749f28"></a>110、以下哪个事件不会在List组件调用控制器ScrollBy接口触发?（B）</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u40f8a8b4"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">A. onScrolllndex</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u8406515b"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">B. onScrollStart</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u72ec2999"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">C.onDidScroll</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u84d9ed2d"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">D. onWillScroll</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u8ff83d12"></a><span style="background-color:#ffffff;"><span style="color:#4d4d4d;"><a name="ud0334e81"></a>111、</span></span><span style="color:#000000;">现有一个宽高分别为200px的XComponent组件， 其绑定了一个XComponentController(xcController), 依次进行如下操作:</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u906692bd"></a><span style="color:#000000;">(1) xcController. setXComponentSurfaceRect( {surfaceWidth: 150, surfaceHeight:500} )</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ucd8a4aea"></a><span style="color:#000000;">(2) 设置XComponent组件的padding为{ top: 5px, left: 10px, bottom: 15px, right: 20px}</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u0c664a55"></a><span style="color:#000000;">(3) 将XComponent组件大小改为300px×300px</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="uad08a1d3"></a><span style="color:#000000;">(4) 给XComponent组件设置一个宽度为2px的边框</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ud3738e65"></a><span style="color:#000000;">(5) xcController. setXComponentSurfaceRect( { offsetX: -20, offsetY: 50,surfaceWidth: 200, surfaceHeight: -100 } )之后, 调用xcController. getXComponentSurfaceRect()的返回值为 （A）</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u020d7c61"></a><span style="color:#43484e;">A. { offsetX: 81, offsetY: -89, surfaceWidth: 150, surfaceHeight: 500}</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ua8d79588"></a><span style="color:#43484e;">B. {offsetX: 75, offsetY: -100, surfaceWidth: 150, surfaceHeight: 500}</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u3477a777"></a><span style="color:#43484e;">C. { offsetX: 81, offsetY:-89, surfaceWidth: 200, surfaceHeight: 0}</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ua6f1bfb7"></a><span style="color:#43484e;">D. {offsetX: -20, offsetY: 50, surfaceWidth: 200, surfaceHeight: 500}</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u4ed3e087"></a><span style="color:#43484e;"><a name="u54d49d0e"></a>112、如果想要设置文本的字体正斜体，可以使用下面的哪个接口?（A）</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u2cd9495d"></a><span style="color:#43484e;">A fontStyle</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u431a6825"></a><span style="color:#43484e;">B fontWeight</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u9714b8b8"></a><span style="color:#43484e;">C fontSize</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u57fc7027"></a><span style="color:#43484e;">D fontColor</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u422b9ddb"></a><span style="color:#43484e;"><a name="u72bd5308"></a>113、</span><span style="color:#000000;">在一个包含多个模块（如entry、feature、har、hsp等）的大型HarmonyOS应用项目中，如果要对某个静态共享模块构建出静态构建包产物，如何通过DevEco Studio进行构建（A）</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="uf16962ed"></a><span style="color:#43484e;">A 选中har模块，点击build菜单栏make module har</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u11e1e5dd"></a><span style="color:#43484e;">B 选中hap模块，点击通过菜单栏make module 'hap</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ue1ee030e"></a><span style="color:#43484e;">C 选中hsp模块，点击通过菜单栏makemodule'hsp</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ude93e5ec"></a><span style="color:#43484e;">D 选中har模块，点击bd菜单栏build hap(s)</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u6a18c7b9"></a><span style="color:#43484e;"><a name="ubb434b95"></a>114、开发者小张开发的项目希望可以增加一个卡片，用于呈现在设备桌面上，将应用的关键信息展示出来，在开发服务卡片时，以下说法正确的是?（A）</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u2e7f0a57"></a><span style="color:#43484e;">A.卡片的具体配置信息通常定义在resources/base/profile/目录下的form_config.json中</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ufd4dd25a"></a><span style="color:#43484e;">B.配置上动态卡片与静态卡片的差别在于isDynamic参数。当isDynamic置空时，该卡片为静态卡片</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u9438cec0"></a><span style="color:#43484e;">C.静态卡片内存占用较大，可实现静态信息展示、刷新和点击跳转。</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="udee1f660"></a><span style="color:#43484e;">D.动态卡片支持自定义交互、动效、滑动等功能，功能丰富且内存占用较小</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="uc8842313"></a><span style="color:#43484e;"><a name="u3b2f4fe9"></a>115、应用程序开发调试过程中，经常需要安装新应用进行调测，下面安装应用操作错误的是（D）</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u2326e0cd"></a><span style="color:#43484e;">A. bm install -p /data/app/</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u271dcc6a"></a><span style="color:#43484e;">B. bm install -p ohosapp.hap -r</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u2419fbc6"></a><span style="color:#43484e;">C.bm install -p ohosapp.hap</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ue556921b"></a><span style="color:#43484e;">D. hdc install -p ohosapp.hap</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ua89f7437"></a><span style="color:#43484e;"><a name="u20ece002"></a>116、在开发应用之前，开发者需要了解应用的包结构，鸿蒙应用定义了多种包格式，以下说</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u9f7b15fc"></a><span style="color:#43484e;">法错误的是（D）</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ud9224a41"></a><span style="color:#43484e;">A.HAP 可以独立编译、独立运行。</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u310fd5b9"></a><span style="color:#43484e;">B.每个HAP中的配置文件只声明自己HAP中的组件信息。</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="uade8ec60"></a><span style="color:#43484e;">C.以app(多个HAP打包到一起)的形式上架</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ueff1e762"></a><span style="color:#43484e;">D.HSP可以独立编译、独立运行。</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u64a3d642"></a><span style="color:#43484e;"><a name="ub32fa2cb"></a>117、在UlAbility的onCreate生命周期中通过EventHub的on注册"event1"和"event2”事件。（D）</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u3a49c98c"></a><span style="color:#43484e;">[Example].[Entry].[EntryAbility]receive. []</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ub17a5847"></a><span style="color:#43484e;">[Example].[Entry].[EntryAbility]ireceive.[2,"test2"]</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u38f1452a"></a><span style="color:#43484e;">[Example].[Entry].[EntryAbility]receive.[2,"test2"]</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u3a17c582"></a><span style="color:#43484e;"><a name="u38cd9be2"></a>118、下述冷启动场景代码片段，组件初始化生命周期中存在CPU密集型任务，为了降低应用冷启动时的白屏时延长，高性能优化方向的最优解为：（D)</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u8b1dbddb"></a><span style="color:#43484e;">&nbsp;aboutToAppear() {<!-- --></span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u5ca36719"></a><span style="color:#43484e;">&nbsp;this.doTask(); // 此为CPU密集型任务</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ud21567ce"></a><span style="color:#43484e;">&nbsp;}</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="uc732c9b8"></a><span style="color:#43484e;">A.使用Promise封装doTask</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u5ecc78f1"></a><span style="color:#43484e;">B.使用setTimeout封装doTask</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="uc849c202"></a><span style="color:#43484e;">C.无需优化</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ucdb1d17f"></a><span style="color:#43484e;">D.将doTask注册到taskpool中执行</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u3f726565"></a><span style="color:#4d4d4d;"><a name="ud5eb8e18"></a>119、下述场景代码片段，组件A、B互斥出现，请问用什么方案可以使页面内容在A、B切换时，保持高性能：（B）</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u84ebc0a3"></a><span style="color:#4d4d4d;">A.使用条件渲染</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u83492255"></a><span style="color:#4d4d4d;">B.使用显隐控制</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="udaafab97"></a><span style="color:#4d4d4d;">C.以上两种方法均可，没有差别</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u1186cd4e"></a><span style="color:#000000;"><a name="u6992556e"></a>120、</span><span style="color:#4d4d4d;">下述代码片段中的renderGroup属性，对性能的影响是什么（A）</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ub9f3d583"></a><span style="color:#4d4d4d;">A 劣化</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="uaea70a7e"></a><span style="color:#4d4d4d;">B 不一定</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ud9c318bb"></a><span style="color:#4d4d4d;">C 没有变化</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="uad1864cb"></a><span style="color:#4d4d4d;">D 优化</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ue1666233"></a><span style="color:#000000;"><a name="ub3dfc657"></a>121、</span><span style="color:#4d4d4d;">Image组件如下属性中哪个属性是支持</span><a href="https://so.csdn.net/so/search?q=svg&amp;spm=1001.2101.3001.7020" title="svg">svg</a><span style="color:#4d4d4d;">图源的？（D)</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u82d50044"></a><span style="color:#4d4d4d;">A interpolation</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u11dc5aae"></a><span style="color:#4d4d4d;">B objectRepeat</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u5f651b77"></a><span style="color:#4d4d4d;">C renderMode</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ude857a59"></a><span style="color:#4d4d4d;">D colorFilter</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ube5d2382"></a><span style="color:#4d4d4d;"><a name="uf016cb6c"></a>122、在如下界面中使用tab键走焦，正确的走焦顺序是？（A)</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ue7b3c976"></a><span style="color:#4d4d4d;">A Button3-&gt;Row2-&gt;Button4-&gt;Text2-&gt;Button2-&gt;Button3</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u6895e049"></a><span style="color:#4d4d4d;">B Button3-&gt;Row2-&gt;Button4-&gt;Text2-&gt;Button1-&gt;Button2-&gt;Button3</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u40f0f931"></a><span style="color:#4d4d4d;">C Button3-&gt;Text1-&gt;Button4-&gt;Text2-&gt;Image1-&gt;Button2-&gt;Button3</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u3251655b"></a><span style="color:#4d4d4d;">D Button3-&gt;Button4-&gt;Text2-&gt;Button2-&gt;Button3</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u60bf1422"></a><span style="color:#4d4d4d;"><a name="u4056602d"></a>123、运行下面代码后，以下说法正确的是：（A)</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u7804b48e"></a><span style="color:#4d4d4d;">A 点击update2按钮后，显示的字符串会变化</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="uf2794ec3"></a><span style="color:#4d4d4d;">B 点击update3按钮后，显示的字符串会变化</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="ub13ef03d"></a><span style="color:#4d4d4d;">C 点击update1按钮后，显示的字符串会变化</span></p> 
<p style="margin-left:0pt;text-align:left;"><a name="u7f00ac67"></a><span style="color:#4d4d4d;">D 点击三个按钮，字符串都不会变化</span></p> 
<p><a name="u8731e02e"></a><span style="color:#4d4d4d;">124、如下页面区域1可以使用哪段代码实现：看图</span></p> 
<p><img alt="" height="1200" src="https://i-blog.csdnimg.cn/direct/84e9c09478a84dcb8424356a22bdfb41.png" width="670"></p> 
<p><img alt="" height="496" src="https://i-blog.csdnimg.cn/direct/107f0bcf1ed24c4fb8bc05e25330efda.png" width="1200"></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">125、</span><span style="color:#4d4d4d;">下列代码中哪些不能指定半模态高度？（D)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">A height: SheetSize.FIT_CONTENT,</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">B height: SheetSize.LARGE,</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">C height: SheetSize.MEDIUM,</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">D height: SheetSize.END,</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">126、折叠屏上如何实现折叠和展开时Grid列数和列宽自适应?（A)</span></p> 
<p style="margin-left:0pt;text-align:left;"><img alt="" height="720" src="https://i-blog.csdnimg.cn/direct/7d5efbd3a03c4a00a5e12d9197c84775.png" width="1200"></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">A Grid().columnsTemplate(('repeat(auto-fit, 100)'))</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">B Grid().columnsTemplate('1fr 1fr 1fr 1fr 1fr 1fr')</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">C Grid().columnsTemplate(('repeat(auto-fill, 100)'))</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">D Grid().columnsTemplate('1fr 1fr 1fr')</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">127、下述列表场景代码片段，列表中存在大量数据，为了降低列表初始化时的耗时，高性能优化方向的最优解为：（D)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">&nbsp;List() {<!-- --></span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">&nbsp;ForEach(...) // 列表项很多</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">&nbsp;}</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">&nbsp;.width('100%')</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">&nbsp;.height('100%')</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">A 结合使用选项A和B</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">B 无需优化</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">C 为List组件添加cachedCount属性 </span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">D 使用LazyForEach替代ForEach</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">128、HAP（Harmony.Ability Package）是应用安装和运行的基本单元，以下关于HAP的描述错误的是（C）</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A HAP包是由代码、资源、第三方库、配置文件等打包生成的模块包，其主要分为两种类型:entry和feature。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B 同一应用所有HAP的配置文件中的bundleName、versionCode、versionName必须要保持一致。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C 支持导出接口和ArkUI组件，给其他模块使用。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D 同一应用所有HAP的签名证书必须要保持一致</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">129、ArkTS支持以下哪个函数。（D)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A Object.hasOwnProperty();</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B Object.getOwnPropertyDescriptor();</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C Object.getOwnPropertyDescriptors();</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D Object.values();</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">130、已知下列代码PageOne页面为navigation中的某一子页面，依次点击PageOne页面中toPageTwo按钮，PageTwo页面中toPageOne按钮，此时获取当前页面的路由栈数量为多少 （）</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">答案是3</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">131、关于长时任务开发使用的接口是（B)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A. 使用publishReminder发布一个提醒类通知，使用cancelReminder取消一个指定的提醒类通知</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B 使用startBackgroundRunning申请任务，使用stopBackgroundRunning取消任务</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C 使用startWork申请任务，使用stopWor取消任务，使用getWorkStatus获取任务状态</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D 使用reguestSuspendDelay申请任务，使用getRemainingDelayTime获取任务剩余时间</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">132、项目中包含原生代码，使用C/C++编写。请描述如何在DevEco Studio中配置CMakeLists.txt文件，以确保原生代码能够被正确编译和链接（B）</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A 在build-Profile.json5定义的buildOption/externalNativeOptions/ abiFilters中设置CMakeLists.txt的路径</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B 在build-Profile.json5定义的buildOption/externalNativeOptions/cppFlags中设置CMakeLists.txt的路径</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C 在build-Profile.json5定义的buildOption/externalNativeOptions/arguments中设置CMakeLists.txt的路径</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D 在build-Profile.json5定义的buildOption/externalNativeOptions/path中设置CMakeLists.txt的路径</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">133、一个应用的功能比较复杂，需要使用ExtensionAbility组件，针对该应用的开发，下面说法错误的是（B）</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A 每个HAP中包含一个UAbility组件或者一个ExtensionAbility组件。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B ExtensionAbility使用独立的HAP实现，可能会存在多个HAP引用相同的HAR，导致重复打包的问题，因此把所有的HAR都使用HSP代替。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C 可以采用多HAP(即一个entry包+多个feature包)来实现应用开发。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D 根据二八原则，非常用的功能，封装成HSP，做成按需加载的模块。</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">134、下列哪种语言，是无法直接在Web组件加载的网页中运行的? （A)</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">A PHP</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">B WebAssembly </span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">C JavaScript </span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">D html</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">135、张工在使用DevEco Studio开发HarmonyOS应用时，遇到了代码编译警告和错误。为了提高开发效率，哪一项正确描述了张工如何利用DevEco Studio的Quick Fix功能来有效管理和修复代码中的问题？（D)</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">A 张工应该首先使用Ctrl + Shift + F快捷键全局搜索问题，然后手动在搜索结果中找出代码警告和错误的原因及位置。</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">B 张工在代码编辑界面看到红色波浪线标记的错误时，直接右键点击错误代码，选择“Delete Line”以移除错误代码行，从而“修复”问题。</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">C 张工只需在代码编辑界面按下F1键，DevEco Studio会自动识别当前光标所在行的错误并直接修复。</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">D 张工通过双击Shift键打开搜索框，输入"problems"打开问题工具面板，双击具体告警条目可直接跳转到问题代码行。接着，将光标置于告警位置，利用弹出的悬浮窗选择合适的修复建议或点击“More actions”以查看更多修复选项。</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">136、开发者小华开发了一个鸿蒙应用，功能开发自验证完成后，准备进行上架了，需要对应用的质量进行初步的评过，为了快速评估和提升产品品质，针对这个场景，小华可以使用IDE上哪个能力帮助他完成这个事情 （A)</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">A 应用与服务体检(App Analyzer)</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">B 代码质量审查(Code Review)</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">C 单元编程插桩测试(Unit Test)</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">D 实时序图调试(Sequence Diagram Debugger)</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">137、使用Web组件的JavascriptProxy接口与网页互通时，如果希望对发起JavaScript的网页URL进行权限控制。获取对应网页URL通过哪个接口最准确?（B）</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">A loadUrl的Url参数</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">B getLastJavascriptProxyCallingFrameUrl</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">C getUrl</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">D getOriginalUrl</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">138、Web组件的WebviewControler.prefetchPage方法预加载的资源有效期是?（C)</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">A 1分钟</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">B 3分钟</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">C 5分钟</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">D 2分钟</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">139、</span><span style="background-color:#ffffff;"><span style="color:#000000;">发者小李正在使用DevEco Studio开发一款面向HarmonyOS的应用，他需要使用鸿蒙的测试框架能力来确保应用质量，在编写测试框架代码时，关于测试框架的api能力说法正确的是：（）</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="background-color:#ffffff;"><span style="color:#000000;">答案：afterAll:在测试套内定义一个清理条件，在所有测试用例结束后执行且仅执行一次，支持一个参数:清理动作函数</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="background-color:#ffffff;"><span style="color:#000000;">140、Web组件调试H5页面的加载性能，可以通过哪个工具? （）</span></span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="background-color:#ffffff;"><span style="color:#000000;">答案：选择DevTools</span></span></p> 
<h2 style="margin-left:0pt;text-align:left;"><a name="t2"></a><span style="color:#000000;"><strong><strong><span style="color:#333333;"><strong>多选题</strong></span></strong></strong></span></h2> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">1、在ArkTS中，以下哪些声明类的方式是正确的 （AD)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">A C2</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">B C4</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">C C3</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">D C1</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">2、一个应用通常会包含多种功能，将不同的功能特性按模块来划分和管理是一种良好的设计方式。在开发过程中，我们可以将每个功能模块作为一个独立的Module进行开发，下面关于Module的说法正确的是 （ABC)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">A Library类型的Module，用于实现代码和资源的共享，有两种类型，分别为Static Library和Shared Library两种类型。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">B Ability类型的Module，用于实现应用的功能和特性，有两种类型，分别为entry和feature。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">C feature类型的Module，应用的动态特性模块，一个应用中可以包含一个或多个feature类型的模块，也可以不包</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">D entry类型的Module，是应用的主模块，一个应用只能包含唯一一个entry类型的HAP。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">3、在开发过程中，我们可以将每个功能模块作为一个独立的Module进行开发。关于Module，下列选项说法正确的是？（ABD）</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">A Shared Library：动态共享库。HSP中的代码和资源可以独立编译，运行时在一个进程中代码也只会存在一份。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">B Static Library：静态共享库。HAR中的代码和资源跟随使用方编译，如果有多个使用方，它们的编译产物中会存在多份相同拷贝。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">C entry类型的Module：应用的主模块，包含应用的入口界面、入口图标和主功能特性，编译后生成entry类型的HAP。每一个应用分发到同一类型的设备上的应用程序包，可以包含一个或多个entry类型的HAP。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">D feature类型的Module：应用的动态特性模块，编译后生成feature类型的HAP。一个应用中可以包含一个或多个feature类型的HAP，也可以不包含。</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">4、某业务团队发现用户对他们App的某个特性使用率并不高，为了节省用户首次下载安装包的体积。考虑将该特性做成按需加载，那么推荐该特性使用的工程模块类型是?(AB)</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">A.hap</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">B.hsp</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">C.app</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">D.har</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">5、</span><span style="color:#43484e;">哪些是持续部署最佳实践？</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#43484e;">正确答案是：</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A、监控和回滚机制：实时监控部署后的应用状态，如有问题及时回滚。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B、自动化部署流程：从代码提交到部署的整个流程应尽可能自动化。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D、灰度发布：先在小部分用户或区域进行部署，观察没问题后再全面推广。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">G、环境一致性：保持开发、测试、生产等环境的高度一致性。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">6、</span><span style="color:#333333;">以下代码片段哪几处违反了ArkTS语法规范。（ACD）</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">A p.x = 'Hello!';</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">B let p = new Point(1.0, 1.0);</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">C p.z = 2.0;</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">D delete p.x;</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">7、</span><span style="color:#43484e;">以下napi代码有问题的是</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#43484e;">正确答案：</span></p> 
<pre data-index="0" class="set-code-show" name="code"><code class="hljs language-cobol">B napi_<span class="hljs-keyword">ref</span> g_<span class="hljs-keyword">ref</span> <span class="hljs-operator">=</span> nullptr; <span class="hljs-operator">/</span><span class="hljs-operator">**</span><span class="hljs-operator">**</span><span class="hljs-operator">*</span> excute <span class="hljs-keyword">in</span> main thread <span class="hljs-operator">**</span><span class="hljs-operator">**</span><span class="hljs-operator">*</span><span class="hljs-operator">/</span> static napi_<span class="hljs-keyword">value</span> DemoInMainThread(napi_env env, napi_callback_info info) {     napi_<span class="hljs-keyword">value</span> <span class="hljs-keyword">string</span> <span class="hljs-operator">=</span> nullptr;     napi_create_<span class="hljs-keyword">string</span>_utf<span class="hljs-number">8</span>(env, <span class="hljs-string">"bar"</span>, NAPI_AUTO_<span class="hljs-keyword">LENGTH</span>, <span class="hljs-operator">&amp;</span><span class="hljs-keyword">string</span>);     napi_create_<span class="hljs-keyword">reference</span>(env, <span class="hljs-keyword">string</span>, <span class="hljs-number">1</span>, <span class="hljs-operator">&amp;</span>g_<span class="hljs-keyword">ref</span>);     <span class="hljs-keyword">return</span> <span class="hljs-keyword">string</span>; }  <span class="hljs-operator">/</span><span class="hljs-operator">**</span><span class="hljs-operator">**</span><span class="hljs-operator">*</span> excute <span class="hljs-keyword">in</span> worker thread <span class="hljs-operator">**</span><span class="hljs-operator">**</span><span class="hljs-operator">*</span><span class="hljs-operator">/</span> static napi_<span class="hljs-keyword">value</span> DemoInWorkerThread(napi_env env, napi_callback_info info) {     napi_<span class="hljs-keyword">value</span> <span class="hljs-keyword">string</span> <span class="hljs-operator">=</span> nullptr;     napi_<span class="hljs-keyword">get</span>_<span class="hljs-keyword">reference</span>_<span class="hljs-keyword">value</span>(env, g_<span class="hljs-keyword">ref</span>, <span class="hljs-operator">&amp;</span><span class="hljs-keyword">string</span>);          napi_<span class="hljs-keyword">value</span> <span class="hljs-keyword">object</span> <span class="hljs-operator">=</span> nullptr;     napi_create_<span class="hljs-keyword">object</span>(env, <span class="hljs-operator">&amp;</span><span class="hljs-keyword">object</span>);          napi_<span class="hljs-keyword">set</span>_named_<span class="hljs-keyword">property</span>(env, <span class="hljs-keyword">object</span>, <span class="hljs-string">"foo"</span>, <span class="hljs-keyword">string</span>);     <span class="hljs-keyword">return</span> <span class="hljs-keyword">object</span>; }</code><div class="hljs-button {2} add_def" data-title="复制" onclick="hljs.copyCode(event)"></div><button class="btn-code-notes ckeditor" data-report-click="{&quot;spm&quot;:&quot;3001.10436&quot;,&quot;extra&quot;:{&quot;index&quot;:0,&quot;runIdx&quot;:-1}}">代码解读</button></pre> 
<pre data-index="1" class="set-code-show" name="code"><code class="hljs language-cobol">D static napi_<span class="hljs-keyword">value</span> Demo(napi_env env, napi_callback_info info) {     <span class="hljs-keyword">size</span>_t argc <span class="hljs-operator">=</span> <span class="hljs-number">1</span>;     napi_<span class="hljs-keyword">value</span> args[<span class="hljs-number">1</span>] <span class="hljs-operator">=</span> {nullptr};      napi_<span class="hljs-keyword">get</span>_cb_info(env, info, <span class="hljs-operator">&amp;</span>argc, args, nullptr, nullptr);     napi_<span class="hljs-keyword">value</span> sizeObj <span class="hljs-operator">=</span> nullptr;          napi_handle_scope scope <span class="hljs-operator">=</span> nullptr;     napi_<span class="hljs-keyword">open</span>_handle_scope(env, <span class="hljs-operator">&amp;</span>scope);     napi_<span class="hljs-keyword">call</span>_<span class="hljs-keyword">function</span>(env, nullptr, args[<span class="hljs-number">0</span>], <span class="hljs-number">0</span>, nullptr, <span class="hljs-operator">&amp;</span>sizeObj);     napi_<span class="hljs-keyword">close</span>_handle_scope(env, scope);          int<span class="hljs-number">64</span>_t width <span class="hljs-operator">=</span> <span class="hljs-number">0</span>;     napi_<span class="hljs-keyword">value</span> result <span class="hljs-operator">=</span> nullptr;     napi_<span class="hljs-keyword">get</span>_element(env, sizeObj, <span class="hljs-number">0</span>, <span class="hljs-operator">&amp;</span>result);     napi_<span class="hljs-keyword">get</span>_<span class="hljs-keyword">value</span>_int<span class="hljs-number">64</span>(env, result, <span class="hljs-operator">&amp;</span>width);     <span class="hljs-keyword">return</span> result; }</code><div class="hljs-button {2} add_def" data-title="复制" onclick="hljs.copyCode(event)"></div><button class="btn-code-notes ckeditor" data-report-click="{&quot;spm&quot;:&quot;3001.10436&quot;,&quot;extra&quot;:{&quot;index&quot;:1,&quot;runIdx&quot;:-1}}">代码解读</button></pre> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">8、下面关于混淆的描述正确的是 （ABCD）</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A 混淆支持ArkTS/TS/JS文件的混淆</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B 代码混淆已经被集成了到SDK中，可以在DevEco Studio中方便地使用。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C API 10及以上版本的Stage模型、编译模式为release时，默认开启代码混淆功能；默认的混淆功能仅会混淆函数参数和局部变量的名称。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D 针对工程源码的混淆可以降低工程被破解攻击的风险，缩短函数名、类名和属性名，减小应用的大小。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">9、下面关于方舟字节码指令含义说明正确的是 （AC)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A 假设寄存器v0存放了对象A, 寄存器v1存放了对象B，那么执行指令"mov v0, v1"后，v0存放对象B, v1存放对象B</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B 假设寄存器v0存放了对象A, 寄存器v1存放了对象B，那么执行指令"mov v0, v1"后，v0存放对象A, v1存放对象A</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C 假设寄存器v0存放了对象A, 累加器(acc)存放了对象B，那么执行指令"lda v0"后，v0存放对象A，acc存放对象A</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D 假设寄存器v0存放了对象A, 累加器(acc)存放了对象B，那么执行指令"lda v0"后，v0存放对象B，acc存放对象B</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">10、下面关于ArkTS中import用法，正确的是（ABCD）</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A import { export1 as alias1 } from "ets file name"</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B import {export1 } from "ets file name"</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C import * as name from "ets file name"</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D import defaultExport from."ets file name"</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">11、以下关于ArkTS线程实例间传输实现方式描述正确的是 （AB)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A taskpool.execute(task).then(() =&gt; {});，TaskPool 共享传输实现方式</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B w.postMessageWithSharedSendable(a);，Worker 共享传输实现方式</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C task.setCloneList([a]); taskpool.execute(task).then(() =&gt; {});，TaskPool 共享传输实现方式</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D w.postMessage(a);，Worker 共享传输实现方式</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">12、</span><span style="color:#333333;">以下代码片段哪几个函数违反了ArkTS语法规范（AB)</span></p> 
<p style="margin-left:0pt;text-align:left;"><img alt="" height="720" src="https://i-blog.csdnimg.cn/direct/cd82aaeeba8f4bf89df1c2075dcd1695.png" width="937"></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">A foo1</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">B foo4</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">C foo3</span></p> 
<p><span style="color:#333333;">D foo2</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">13、</span><span style="color:#4d4d4d;">在ArkTS中，以下哪些属性的声明是正确的。 （ACD）</span></p> 
<p style="margin-left:0pt;text-align:justify;"><img alt="" height="638" src="https://i-blog.csdnimg.cn/direct/bc06d3cb50b34536b62c569e7f86b2dc.png" width="634"></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">A value1</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">B value2</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">C value4</span></p> 
<p><span style="color:#4d4d4d;">D value3</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">14、如下ABC 3处手势，有机会执行的是哪几处？（AC）</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">A A</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">B B</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">C C</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">D NA</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">15、以下哪些实现方式可实现文本字号20的效果（ACD）</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">A 包含Text(undefined.{controller:this.controller})</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">B 包含Text('This is text').minFontSize(20)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">C 包含Text(){ Span('span letter spacing').fontSize(20) }.fontSize(30)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">D 包含Text('TextAlign set to center').fontSize(20)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">16、</span><span style="color:#333333;">依次点击A、B、C、D四个按钮，其中不会触发UI刷新的是：（AB）</span></p> 
<p style="margin-left:0pt;text-align:left;"><img alt="" height="720" src="https://i-blog.csdnimg.cn/direct/7e8ff5b9ad404aa8bcd24db2f6a931cc.png" width="736"></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">A A</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">B B</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">C C</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">D D</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">17、</span><span style="color:#4d4d4d;">如何实现类似下图布局（BC)</span></p> 
<p style="margin-left:0pt;text-align:justify;"><img alt="" height="720" src="https://i-blog.csdnimg.cn/direct/59983fd602614c3c95a080d7ca19a952.png" width="1200"></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">18、Code Linter针对ArkTS/TS代码进行最佳实践/编程规范方面的检查，最佳实践/编程规范方面的检查规则可以配置，针对codelinter的配置项一下哪些说法是正确的（ACD）</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A ruleSet：配置检查使用的规则集，规则集支持一次导入多条规则。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B rules：可以基于ruleSet配置的规则集，新增额外规则项，但是无法修改ruleSet中规则默认配置</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C ignore：配置无需检查的文件目录，其指定的目录或文件需使用相对路径格式，相对于code-linter.json5所在工程根目录，例如：build/**/*。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D files：配置待检查的文件名单，如未指定目录，规则适用于所有文件，例如：[“**/*.ets”,”**/*.js”,”**/*.ts”]。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">19、一个应用通常会包含多种功能，将不同的功能特性按模块来划分和管理是一种良好的设计方式。在开发过程中，我们可以将每个功能模块作为一个独立的Module进行开发，下面关于Module的说法正确的是（ABC）</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A Library类型的Module，用于实现代码和资源的共享，有两种类型，分别为Static Library和Shared Library两种类型。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B Ability类型的Module，用于实现应用的功能和特性，有两种类型，分别为entry和feature。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C feature类型的Module，应用的动态特性模块，一个应用中可以包含一个或多个feature类型的模块，也可以不包</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D entry类型的Module，是应用的主模块，一个应用只能包含唯一一个entry类型的HAP。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">20、在大型软件工程中，一般会伴随着多团队开发，各团队开发自己的业务模块，最后再由集成交付团队集成到一起，下面哪些是大型应用模块化开发最佳实践（ABCD）</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A 若多个模块依赖了不同版本的HAR，使用OHPM的overrides机制配置指定使用哪个版本的HAR，以减少包大小。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B 避免用户首次下载应用耗时过长，及过多占用用户空间，不常用功能做成按需加载。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C 一次上架多端部署。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D 使用路由表进行模块间解耦。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">21、</span><span style="color:#333333;">通过如下openLink的接口启动，如下哪些配置的UIAbility不可能被拉起(下图不选，其余三个选)viewDate+https</span></p> 
<p style="margin-left:0pt;text-align:left;"><img alt="" height="720" src="https://i-blog.csdnimg.cn/direct/0cc8a4d6012941d7855c31b45cbbbaa3.png" width="1042"></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">22、某个应用的启动框架配置文件详细信息如下，以下说法正确的是：（ACD）</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A StartupTask_001会在StartupTask_004之后执行</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B StartupTask_003会在StartupTask_004之后执行</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C StartupTask_005会在主线程执行</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D StartupTask_006会在AbilityStage的onCreate前初始化完成</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">23、使用ArkUI组件复用之后，还是没有显著提升列表滑动场景的性能，属于组件复用未生效可能的原因有？（BCD）</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A 没有在aboutToReuse更新关联的状态变量数据。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B 在aboutToReuse回调函数中更新了冗余的状态变量。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C 页面嵌套了过多自定义组件。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D 复用的自定义组件中使用if等条件渲染语句导致结构不相同，未使用reuseId标记。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">24、下面关于动态import描述正确的是（ABC）</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A 动态import根据入参是否为常量字符串分为常量动态import和变量动态import两种</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B HAR模块间只有变量动态import时可以进行模块解耦</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C 动态导入import0)是个异步接口，调用后将返回一个promise</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D 常量动态import也必须配置runtimeOnly选项</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">25、下面关于混淆规则描述正确的是（AC）</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A -enable-export-obfuscation：开启直接导入或导出的类或对象的名称和属性名混淆</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B -enable-toplevel-obfuscation：开启属性混淆</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C -disable-obfuscation：关闭所有混淆</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D -enable-property-obfuscation：开启顶层作用域名称混淆</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">26、</span><span style="color:#43484e;">在ArkTS中，以下代码片段正确的是 （AB）</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#43484e;">正确答案如下:</span></p> 
<pre data-index="2" class="set-code-show" name="code"><code class="hljs language-cobol">A <span class="hljs-keyword">function</span> fn(x: <span class="hljs-keyword">string</span> | <span class="hljs-keyword">number</span>): <span class="hljs-keyword">string</span> {   <span class="hljs-keyword">return</span>  <span class="hljs-string">'value: '</span> <span class="hljs-operator">+</span> x; }  <span class="hljs-keyword">type</span> funcType <span class="hljs-operator">=</span> (ns: <span class="hljs-keyword">string</span>) <span class="hljs-operator">=</span><span class="hljs-operator">&gt;</span> <span class="hljs-keyword">string</span>; let func: funcType <span class="hljs-operator">=</span> fn;</code><div class="hljs-button {2} add_def" data-title="复制" onclick="hljs.copyCode(event)"></div><button class="btn-code-notes ckeditor" data-report-click="{&quot;spm&quot;:&quot;3001.10436&quot;,&quot;extra&quot;:{&quot;index&quot;:2,&quot;runIdx&quot;:-1}}">代码解读</button></pre> 
<pre data-index="3" class="set-code-show" name="code"><code class="hljs language-cobol">B <span class="hljs-keyword">function</span> fn(x: <span class="hljs-keyword">string</span> | <span class="hljs-keyword">number</span>): <span class="hljs-keyword">string</span> {   <span class="hljs-keyword">return</span> <span class="hljs-string">'value:'</span> <span class="hljs-operator">+</span> x; }  <span class="hljs-keyword">type</span> funcType <span class="hljs-operator">=</span> (ns: <span class="hljs-keyword">string</span> | <span class="hljs-keyword">number</span>) <span class="hljs-operator">=</span><span class="hljs-operator">&gt;</span> <span class="hljs-keyword">string</span>; let func: funcType <span class="hljs-operator">=</span> fn;</code><div class="hljs-button {2} add_def" data-title="复制" onclick="hljs.copyCode(event)"></div><button class="btn-code-notes ckeditor" data-report-click="{&quot;spm&quot;:&quot;3001.10436&quot;,&quot;extra&quot;:{&quot;index&quot;:3,&quot;runIdx&quot;:-1}}">代码解读</button></pre> 
<p></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">27、</span><span style="color:#333333;">以下代码片段哪几处违反了ArkTS语法规范。 （BCD）</span></p> 
<p style="margin-left:0pt;text-align:left;"><img alt="" height="720" src="https://i-blog.csdnimg.cn/direct/a4798685c44249fa843f72021ab18f99.png" width="1052"></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">A foo(1, 2);</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">B foo(1, 2, 3, 4);</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">C foo();</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">D foo(1, 2, 3);</span></p> 
<p style="margin-left:0pt;text-align:justify;"></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">28、以下关于Taskpool和Worker的描述正确的是（AC）</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">A Worker的任务执行时长上限是无限制</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">B Worker支持取消已发起的任务</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">C TaskPool支持设置任务的优先级</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">D TaskPool不支持线程复用</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">29、</span><span style="color:#4d4d4d;">List组件onScrollIndex事件触发时机是 （BD)</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#4d4d4d;">A List组件滚动停止时触发</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#4d4d4d;">B List组件显示区域内第一个子组件或最后一个子组件或中间位置子组件索引值变化时触发</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#4d4d4d;">C List组件列表滚动时每帧触发</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#4d4d4d;">D List组件首次加载完成时触发</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#4d4d4d;">30、</span><span style="color:#333333;">如果想让grid上的捏合手势手势生效，而不跟grid上的滚动手势形成冲突，.xxxx?手势接口应该怎么配置?（ACD）</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">A gesture</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">B GesureGroup</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">C priorityGesture</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">D parallelGesture</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">31、</span><span style="color:#000000;">在基于Stage模型开发的应用项目代码下，都存在一个app.json5配置文件，用于配置应用的全局信息，以下app.json5配置文件错误的是 （AB）</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">结果如下：</span></p> 
<p style="margin-left:0pt;text-align:justify;"><img alt="" height="469" src="https://i-blog.csdnimg.cn/direct/81bcb75f13f04f4fabb91072b664d6ed.png" width="1200"></p> 
<p style="margin-left:0pt;text-align:justify;"><img alt="" height="547" src="https://i-blog.csdnimg.cn/direct/bd643f54418249aabebe91f3c79e2256.png" width="1200"></p> 
<p style="margin-left:0pt;text-align:justify;"><img alt="" height="723" src="https://i-blog.csdnimg.cn/direct/80ee36c0c10f409b9febbe53b1083df5.png" width="720"></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">32、</span><span style="color:#4d4d4d;">使用如下的代码去启动一个ability时，哪种skills定义的组件能够被匹配到：（ACD）</span></p> 
<p style="margin-left:0pt;text-align:justify;"><img alt="" height="720" src="https://i-blog.csdnimg.cn/direct/346dea5c3c3b4f12930c86ff655190aa.png" width="788"></p> 
<p style="margin-left:0pt;text-align:justify;"><img alt="" height="720" src="https://i-blog.csdnimg.cn/direct/e97441a598a7408f9cb6d416b53f58a9.png" width="760"></p> 
<p style="margin-left:0pt;text-align:justify;"><img alt="" height="648" src="https://i-blog.csdnimg.cn/direct/e45254a86d3c4f15850fd89abb460998.png" width="1200"></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">33、</span><span style="color:#000000;">以下哪些方式可以实现ArkWeb同层渲染能力（AD)</span></p> 
<p style="margin-left:0pt;text-align:justify;"><img alt="" height="693" src="https://i-blog.csdnimg.cn/direct/1df1ea85d2ff462abeebd7cc7aea54d5.png" width="1200"></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">34、用户购买商品后，你需要及时发放相关权益。但实际应用场景中，若出现异常将导致应用无法知道用户实际是否支付成功，从而无法及时发放权益，即出现掉单情况。为了确保权益发放，你需要在以下哪些场景检查用户是否存在已购未发货的商品：（ABC）</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A createPurchase请求返回1001860001-内部错误时</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B 应用启动时</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C createPurchase请求返回1001860051-由于已经拥有该商品，购买失败时</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D finishPurchase请求返回1001860052-由于未拥有该商品，发货失败时</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">35、ArkTS对并发编程API和能力进行了增强，以下描述正确的是（BD）</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A 单次I/O任务的开发场景中，必须使用TaskPool进行开发。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B CPU密集型任务场景中，当任务不需要长时间（3分钟）占据后台线程，而是一个个独立的任务时，推荐使用TaskPool进行开发。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C 默认情况下，Sendable数据在ArkTS并发实例间（包括主线程、TaskPool&amp;Worker工作线程）传递的行为是拷贝传递。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D 在并发API的形式上，目前主要有两种：Worker和TaskPool。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">36、</span><span style="color:#4d4d4d;">ArkTS中不能使用以下哪些类型。（BC）</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">A union type</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">B any</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">C unknown</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">D tuple type</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">37、应用开发的有些场景中，如果希望根据条件导入模块或者按需导入模块，可以使用动态导入代替静态导入，面导入场景中适合使用动态import的是（ABCD）</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">A 当静态导入的模块很明显的降低了代码的加载速度且被使用的可能性很低，或者并不需要马上使用它。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">B 当被导入的模块，在加载时并不存在，需要异步获取。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">C 当被导入的模块说明符，需要动态构建。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">D 当静态导入的模块很明显的占用了大量的系统内存且被使用的可能性很低。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">38、以下代码片段哪几个class/interface违反了ArkTS语法规范。(AB)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">Class Person {}</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">Class Student extends Person {}</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">class Instructor implements Person{}</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">interface Shape {}</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">interface Circle implements Shape {}</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">class Square implements Shape {}</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">A Instructor</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">B Circle</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">C Square</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">D Student</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">39、下面代码符合Node-API开发规范的是（AC）</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">A.</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">static napi_value Demo3(napi_env env, napi_callback_info info)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">{<!-- --></span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">&nbsp;size_t argc = 2;</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">&nbsp;napi_value argv[2] = {nullptr};</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">&nbsp;napi_get_cb_info(env, info, &amp;argc, nullptr, nullptr, nullptr);</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">&nbsp;// 业务代码</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">&nbsp;return nullptr;</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">}</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">B.</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">static napi_value Demo1(napi_env env, napi_callback_info info)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">{<!-- --></span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">&nbsp;size_t argc;</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">&nbsp;napi_value argv[10] = {nullptr};</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">&nbsp;napi_get_cb_info(env, info, &amp;argc, argv, nullptr, nullptr);</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">&nbsp;return nullptr;</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">}</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">C.</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">static napi_value Demo2(napi_env env, napi_callback_info info)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">{<!-- --></span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">&nbsp;size_t argc = 0;</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">&nbsp;napi_get_cb_info(env, info, &amp;argc, nullptr, nullptr, nullptr);</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">&nbsp;if (argc == 0) {<!-- --></span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">&nbsp;return nullptr;</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">&nbsp;}</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">&nbsp;napi_value* argv = new napi_value[argc];</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">&nbsp;napi_get_cb_info(env, info, &amp;argc, argv, nullptr, nullptr);</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">&nbsp;// 业务代码</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">&nbsp;delete argv;</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">&nbsp;return nullptr;</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">}</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">D.</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">static napi_value Demo4(napi_env env, napi_callback_info info)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">{<!-- --></span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">&nbsp;size_t argc = 5;</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">&nbsp;napi_value argv[3] = {nullptr};</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">&nbsp;napi_get_cb_info(env, info, &amp;argc, argv, nullptr, nullptr);</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">&nbsp;return nullptr;</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">}</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">40、ArkTS是鸿蒙生态的应用开发语言。下列说法正确的是（ACD）</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">A ArkTS在保持TypeScript（简称TS）基本语法风格的基础上，进一步通过规范强化静态检查和分析，使得在程序运行之前的开发期能检测更多错误，提升代码健壮性，并实现更好的运行性能。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">B TS/JS代码支持import ArkTS代码。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">C针对JavaScript（简称JS）/TS并发能力支持有限的问题，ArkTS对并发编程API和能力进行了增强。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">D ArkTS提供了声明式UI范式、状态管理支持等相应的能力，让开发者可以以更简洁、更自然的方式开发应用。</span></p> 
<p><span style="color:#4d4d4d;">41、</span><span style="color:#333333;">Image组件以下哪些方式可显示图片？（ABCD）</span></p> 
<p><img alt="" height="720" src="https://i-blog.csdnimg.cn/direct/58b66b63314b47d6b2b7b5cecc6e9799.png" width="807"></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">42、HarmonyOS应用开发者小张，正在利用DevEco Studio进行一款复杂应用的UI界面调试。小张了解到ArkUI Inspector是DevEco Studio内置的一项强大工具，能够显著提升UI调试效率。基于ArkUI Inspector的特性描述，下列哪些描述是正确的（ABD）</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A 交互式组件选择：用户既可以在组件树视图中选择组件，使UI界面上对应组件高亮显示并展示其属性详情；也可以直接在UI布局显示界面上点击选择组件</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B UI效果查看：开发者能够查看连接真机上运行的应用程序的UI显示效果，页面组件树结构，以及选中组件的属性信息</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C 性能监控：提供详细的UI渲染性能指标，帮助开发者识别布局瓶颈和渲染效率问题，从而优化应用性能</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D UI快照管理：支持导出应用的UI界面为快照图片，并允许这些快照被导入回ArkUI Inspector中，便于离线分析或分享讨论UI设计方案</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">43、以下关于LocalStorage的说法正确有哪些？（ABD)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A 组件树的根节点，即被@Entry装饰的@Component，可以被分配一个LocalStorage实例，此组件的所有子组件实例将自动获得对该LocalStorage实例的访问权限。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B 应用程序可以创建多个LocalStorage实例，LocalStorage实例可以在页面内共享，也可以通过GetShared接口，获取在UIAbility里创建的GetShared，实现跨页面、UIAbility内共享。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C LocalStorage中的所有属性都是不可变的。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D 被@Component装饰的组件最多可以访问一个LocalStorage实例和AppStorage，未被@Entry装饰的组件不可被独立分配LocalStorage实例，只能接受父组件的LocalStorage实例。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">44、</span><span style="color:#4d4d4d;">在基于Stage模型开发的应用项目代码下，每个模块都存在一个module.json5配置文件，用于配置模块的基本信息，以下module.json5配置文件正确的（ABD)</span></p> 
<p style="margin-left:0pt;text-align:left;"><img alt="" height="1031" src="https://i-blog.csdnimg.cn/direct/315c430881944ba2853c440c24e8ca32.png" width="720"></p> 
<p style="margin-left:0pt;text-align:left;"><img alt="" height="788" src="https://i-blog.csdnimg.cn/direct/172da1b798e24a68b8b26bb1bd785a0b.png" width="720"></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">45、</span><span style="color:#4d4d4d;">hiAppEvent提供的Watcher接口，订阅到的系统事件，哪些包含HiLog日志？（BD）</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">A 启动耗时事件</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">B卡死事件</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">C CPU高负载事件</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">D 崩溃事件</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#4d4d4d;">46、</span><span style="color:#333333;">当前动态import支持导入的模块类型有哪些？（ABCD）</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">A 动态import支持加载本地HAR模块</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">B 动态import支持加载远程HAR模块</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">C 动态import支持加载HSP模块</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">D 动态import支持加载OHPM模块</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">47、Arkrs是鸿蒙生态的应用开发语言。以下哪些选项是ArkTs的设计理念。(ABD)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">A 通过规范强化静态检查和分析，减少运行时的类型检查，从而降低了运行时负载，提升执行性能。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">B ArkTS保留了TS大部分的语法特性，帮助开发者更容易上手ArkTS。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">C ArkTS不支持null-satety特性。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">D 通过规范强化静态检查和分析，使得许多错误在编译时可以被检测出来，降低代码运行错误的风险。</span></p> 
<p><span style="color:#333333;">48、</span><span style="color:#4d4d4d;">以下代码片段哪几处违反了ArkTS语法规范（ABD）</span></p> 
<p><img alt="" height="720" src="https://i-blog.csdnimg.cn/direct/667b17eb0b134e75a4d940db4bc982a5.png" width="1158"></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">A foo(null);</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">B foo('');</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">C foo(0);</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">D foo(undefined);</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">49、以下哪些是可以在Navigation中使用pushPathByName接口传递的params的参数类型（ABC）</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">A record&lt;string,string&gt;</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">B string</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">C arrayBuffer</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">D map&lt;string,string&gt;</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">50、下面关于方舟字节码文件格式描述正确的是（BD）</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">A 方舟字节码文件中不包含字节码文件内容的ader32校验和</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">B 方舟字节码文件中数据类型uint16 t表示16-bit无符号整数，采用小端字节序</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">C 方舟字节码文件中数据类型uint32 t表示32-bit无符号整数，采用大端字节序</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">D 方舟字节码文件是ArKTS/TS/JS编译后的二进制产物</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">51、在开发HarmonyOS应用的多元化测试环境中，DevEco Studio引入了本地模拟器（Local Emulator）作为重要工具，旨在帮助开发者在个人开发机器上高效模拟HarmonyOS环境，进行应用或服务的快速运行与细致调试。请根据本地模拟器的实际应用场景与系统要求，选出所有正确的描述选项（BCD）</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">A 开发者需要注意的是，DevEco Studio的本地模拟器可以在虚拟机内部进一步运行，以节省硬件资源。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">B DevEco Studio的本地模拟器允许开发者在个人电脑上模拟HarmonyOS环境，便于应用或服务的运行与调试。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">C mac计算机配置方面，为了确保本地模拟器的稳定运行，推荐至少配备8GB RAM。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">D 为了保证流畅的运行和调试体验，本地模拟器推荐macOS系统版本至少为12.5以上。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">52、下面关于混淆的描述正确的是（ABCD）</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">A 可以在HAR模块工程的build-profile.json5中的obfuscation.consumerFiles字段中配置导出的混淆配置，该配置仅在编译依赖该HAR的模块时生效。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">B 支持顶层作用域名称、属性名称、文件名称等多种混淆功能</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">C 在工程build-profile.json5中的obfuscation.ruleOptions.files字段中配置该工程的混淆配置，该配置仅在编译该工程时生效。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">D 修改应用混淆配置，新配置需要重新全量编译应用才能生效</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#333333;">53、</span><span style="color:#4d4d4d;">如下哪些方式可实现图片动态播放 （ABD)</span></p> 
<p style="margin-left:0pt;text-align:left;"></p> 
<pre data-index="4" class="set-code-show" name="code"><code class="hljs language-cobol">不选带有下面这个的，其余<span class="hljs-number">3</span>个全选   private async getPixelMaps() {        <span class="hljs-operator">/</span><span class="hljs-operator">/</span>	<span class="hljs-operator">=</span><span class="hljs-operator">=</span><span class="hljs-operator">=</span><span class="hljs-operator">=</span><span class="hljs-operator">=</span><span class="hljs-operator">=</span><span class="hljs-operator">=</span><span class="hljs-operator">=</span><span class="hljs-operator">=</span><span class="hljs-operator">=</span><span class="hljs-operator">=</span><span class="hljs-operator">=</span><span class="hljs-operator">=</span><span class="hljs-operator">=</span><span class="hljs-operator">=</span><span class="hljs-operator">=</span><span class="hljs-operator">=</span><span class="hljs-operator">=</span><span class="hljs-operator">=</span><span class="hljs-operator">=</span>	怎么没有定义Mypixelmaps？？？？？？？？     Mypixelmaps.push(await this.getPixmapFromMedia($r(<span class="hljs-string">'app.media.icon'</span>))) <span class="hljs-operator">/</span><span class="hljs-operator">/</span>对应资源图片名后缀为png     <span class="hljs-keyword">return</span> Mypixelmaps;   }</code><div class="hljs-button {2} add_def" data-title="复制" onclick="hljs.copyCode(event)"></div><button class="btn-code-notes ckeditor" data-report-click="{&quot;spm&quot;:&quot;3001.10436&quot;,&quot;extra&quot;:{&quot;index&quot;:4,&quot;runIdx&quot;:-1}}">代码解读</button></pre> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">54、下面关于混淆规则描述正确的是（CD）</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A -keep-property-name [,identifiers,...]：指定要保留的顶层作用域的名称</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B -keep-global-name [,identifiers,...]：指定想保留的属性名</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C -print-namecache filepath： 将名称缓存保存到指定的文件路径。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D -keep-file-name [,identifiers,...]：指定要保留的文件/文件夹的名称</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">55、下面关于Node-API数据类型描述正确的是（CD）</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A napi threadsafe function release mode:该枚举类型定义了两个常量，用于指定线程安全函数的调用模式</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B napi threadsafe_function_call mode:该枚举类型定义了两B个常量，用于指定在何时释放线程安全函数的回调函数</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C napienv:用于表示Node-API执行时的上下文</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D napi status:是一个枚举数据类型，表示Node-API接口返回的状态信息</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">56、</span><span style="color:#4d4d4d;">以下数据类型中，哪些是Sendable数据。 （ACD）</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">A number</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">B class C</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">C interface I</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">D string</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#4d4d4d;">57、</span><span style="color:#333333;">处于安全因素考虑，ArkTS不支持以下哪些语法。（ACD）</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">A with()</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">B Object.entries()</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">C eval()</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">D new Function('a', 'b', 'return a + b')</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#333333;">58、</span><span style="color:#4d4d4d;">在ArkTS中，以下哪些声明类的方式是正确的（AD）</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">A C2</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">B C4</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">C C3</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">D C1</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">59、小华正在使用DevEco studio开发一个复杂的Harmonyos应用，他意识到代码中有一段逻辑被多次重复使用，为了优化代码结构和减少冗余，他决定将这段逻辑提取出来作为一个独立的方法。同时，他也注意到有些常用的硬编码值可以抽象为常量，以提高代码的可读性和维护性。小华希望利用DevEco Studio的代码重构功能来高效完成这些任务，通过以下哪些操作来实现代码重构，以提升编码效率（ABCD）</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">A 为了简化复杂类型的多次书写，小华可以选择特定类型字面量，通过“Refactor"菜单下的“Extract Type Alias”来创建类型别名</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">B 选中需要重构的代码块，右键点击选择“Refactor”,然后选择“Extract Method”来将代码块转换为一个新的函数/方法</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">C 若需要将局部变量提升为类成员变量，小华只需简单选中变量名，右键选择“Refactor”-&gt;“Promote Local Variable”</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">D 如果小华识别到一组相关的对象字面值可以抽象为一个接口，他可以直接通过“Refactor”"菜单中的Extract Interface”功能实现</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">60、哪些是持续集成最佳实践（ACDFG）</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">A 代码审查：在集成前进行代码审查，及时发现潜在问题。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">B 构建相同代码的 Pipeline 运行多次，得到结果不同。比如，基于同一代码基线，一条 Pipeline 构建了 5 次，只要最后一次通过即可。反模式</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">C 全面的测试套件：包括单元测试、集成测试、功能测试等，以提高代码质量。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">D 自动化构建：确保构建过程是完全自动化的，减少人为错误。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">E 通常项目上会有一个专职 Ops，在项目可以发布的时候手动触发部署流程，或者需要传递很多参数，让 Pipeline 运行起来。反模式</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">F 快速反馈机制：让开发人员能迅速得知集成结果和测试状态。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#4d4d4d;">G 频繁提交代码：鼓励开发人员经常提交小的代码更改，以便更快地发现问题。</span></p> 
<p><span style="color:#4d4d4d;">61、</span><span style="color:#333333;">下面代码符合ArkTS编程规范的是（AC）</span></p> 
<p><img alt="" height="720" src="https://i-blog.csdnimg.cn/direct/bc37d3f51a7243dda228eebe30646084.png" width="1200"></p> 
<p><span style="color:#333333;">62、下面代码符合ArkTS编程规范的是（AB）</span></p> 
<p><img alt="" height="720" src="https://i-blog.csdnimg.cn/direct/1869cee602fe45b8b4985b344a5135a1.png" width="1173"></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">63、下面关于ArkTS中export用法，正确的是（ABCD）</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A export { export1 as alias1 } from "ets file name";</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B export * as name from "ets file name"</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C export * from "ets file name"</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D export { export1 } from "ets file name";</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">64、为了加快构建速度，提高开发效率，可以如何调整hvigor配置，从而优化构建速度（BCD）</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A 启用hvigor的typeCheck，在增量场景下进行对hvigorfile.ts进行类型检查</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B 启用hvigor的incremental，在增量场景下检查任务是否可以跳过</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C 启动hvigor的daemon模式，在增量场景下复用缓存</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D 启用hvigor的parallel，在增量场景下进行并行编译处理</span></p> 
<p style="margin-left:0pt;text-align:left;">&nbsp;<span style="color:#000000;">65、Navigation组件是路由导航的根视图容器，一般作为Page页面的根容器使用，以下关于Navigation组件说法正确的是 (CD)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A Navigation只能在entry类型的Module中使用</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B Navigation子页面的根容器可以采用如Column、Row这些容器组件</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C Navigation的页面显示模式有单页面、分栏和自适应三种显示模式</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D Navigation的子页面可以来自不同的Module</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">66、使用如下的代码去启动一个ability时，哪种skills定义的组件能够被匹配到：（ACD）</span></span></p> 
<p style="margin-left:0pt;text-align:justify;"><img alt="" height="1114" src="https://i-blog.csdnimg.cn/direct/317cec6fdc3140a4b7150667e8e70564.png" width="720"></p> 
<p style="margin-left:0pt;text-align:justify;"><img alt="" height="720" src="https://i-blog.csdnimg.cn/direct/fb9b081c8792458ba9220154313be433.png" width="720"></p> 
<p style="margin-left:0pt;text-align:left;"><span style="background-color:#ffffff;"><span style="color:#4d4d4d;">67、HSP支持导出ArkUI组件、接口，供应用内的其他HAP/HSP引用，下面正确的是 (ABC）</span></span></p> 
<p style="margin-left:0pt;text-align:left;"></p> 
<p style="margin-left:0pt;text-align:left;"><img alt="" height="720" src="https://i-blog.csdnimg.cn/direct/01e19dfb7c2044c8a027533381aab95a.png" width="915"></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">68、项目组开发的HarmonyOS应用工程，为了保护hap代码资产，如何在DevEco Studio中启用混淆的功能，并设置相应的混淆规则（BD）</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A release模式下将buildOption/arkOptions/ruleOptions/enable设置为false</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B release模式下将buildOption/arkOptions/ruleOptions/enable设置为true</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C 在混淆规则配置文件consumer-rules.txt中进行混淆规则的配置</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D 在混淆规则配置文件obfuscation-rules.txt中进行混淆规则的配置</span></p> 
<p><span style="color:#000000;">68、Image组件如下加载方式哪些是正确的（假设加载地址是有效的）（ABD）</span></p> 
<p><img alt="" height="585" src="https://i-blog.csdnimg.cn/direct/da0d0fd63a7b4500893168780f1c0c30.png" width="1200"></p> 
<p><span style="color:#000000;">69、ArkTS是鸿蒙生态的应用开发语言。以下哪些选项是ArkTS的设计理念。（BCD)</span></p> 
<p><img alt="" height="615" src="https://i-blog.csdnimg.cn/direct/d851139ab38b4d8eb00bd84e42700db8.png" width="1200"></p> 
<p></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">70、</span>在应用开发中，部分代码和资源被重复引用和编译构建，可以新建什么模块来实现代码和资源的共享？(BD)</p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A HAR</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B HAP</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C APK</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D HSP</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">71、哪些是持续集成最佳实践? （ABCEF) </span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A 代码审查 ：在集成前进行代码审查，及时发现潜在问题。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B 快速反馈机制 ：让开发人员能迅速得知集成结果和测试状态。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C 全面的测试套件 ：包括单元测试&nbsp;、集成测试&nbsp;、&nbsp;功能测试等，&nbsp;以提高代码质量。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D 通常项目上会有一个专职Ops，在项目可以发布的时候手动触发部署流程......</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">E 频繁提交代码 ：鼓励开发人员经常提交小的代码更改，&nbsp;以便更快地发现问题。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">F 自动化构建 ：确保构建过程是完全自动化的，减少人为错误。 </span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">G 构建相同代码的Pipeline运行多次。。。。。。。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">72、开发者小张在开发鸿蒙应用项目时，首选需要涉及当前的工程结构，工程项目结构方案设计时，了解。。。。。。（ABD)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A 有三类进程。。。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B 采用面向对象的方式</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C 通过导出匿名对象</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D 一个进程可以运行多个应用组件实例，，，，，</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">73、</span>当popup气泡弹出后（默认配置），以下哪些行为可以使popup气泡关闭？（AB)</p> 
<p>A 屏幕侧滑</p> 
<p>B 点击气泡外的屏幕</p> 
<p>C 窗口大小发生变化</p> 
<p>D 息屏</p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">74、 以下关于Menu的说法正确的是？（ABCD)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A 当设置的预览图片。。。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B 当布局。。。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C Menu。。。。。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D 菜单的退出方式。。。。</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">75、下面哪些情况下推荐使用Web组件的onInterceptRequest进行网络拦截（BD)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A 打开新的网页时，替换原网页的URL</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B 点击网页&lt;a href.....123456789.....</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C 进入首页后，提前加载下一页面的数据</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D 网页加载时，使用本地离线图片资源，替换.....</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">76、以下关于Menu的说法正确的是?（ABCD）</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A bindContextMenu长按弹出的菜单可支持拖拽，bindMenu不支持拖</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B 使用状态变量控制菜单显示时，需要等待目标节点构建完成后才能设置，如目标节周期</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C 用状态变量控制菜单显示时，需要等待目标节点构建完成后才能设置，如目标节周期</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D bindContextMenu总是显示在子窗口中，在PC设备上可以超出应用主窗口显示 </span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">77、下述场景代码片段，其中列表数据较多，且图片为远端图片，能有效减少列表滑动过程中的图片白块的措施有：多选（ABD）</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A.为List添加cachedCount属性</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B.为LazyForEach添加第三参数</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C.使用ForEach替换LazyForEach</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D.为img添加有效缓存管理 </span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">78、</span><span style="color:#18191c;">以下代码在平板设备下，支持下拉关闭弹窗的是？（AC）</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">A.</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">// xxx.ets</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">@Entry</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">@Component</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">struct SheetTransitionExample {<!-- --></span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">@State isShow:boolean = false</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">@Builder myBuilder() {<!-- --></span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">Column() {<!-- --></span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">}</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">.width('100%')</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">}</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">build() {<!-- --></span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">Column() {<!-- --></span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">Button("transition modal 1")</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">.onClick(() =&gt; {<!-- --></span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">this.isShow = true</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">})</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">.fontSize(20)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">.margin(10)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">.bindSheet($$this.isShow, this.myBuilder(),{<!-- --></span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">detents:[SheetSize.MEDIUM,SheetSize.LARGE,200],</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">title:{title:"title", subtitle:"subtitle"},</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">preferType: SheetType.CENTER,</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">shouldDismiss:((sheetDismiss: SheetDismiss)=&gt; {<!-- --></span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">console.log("bind sheet shouldDismiss")</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">sheetDismiss.dismiss()</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">})</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">})</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">}</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">.justifyContent(FlexAlign.Start)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">.width('100%')</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">.height('100%')</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">}</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">}</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">B.</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">// xxx.ets</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">@Entry</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">@Component</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">struct SheetTransitionExample {<!-- --></span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">@State isShow:boolean = false</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">@Builder myBuilder() {<!-- --></span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">Column() {<!-- --></span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">}</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">.width('100%')</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">}</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">build() {<!-- --></span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">Column() {<!-- --></span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">Button("transition modal 1")</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">.onClick(() =&gt; {<!-- --></span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">this.isShow = true</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">})</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">.fontSize(20)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">.margin(10)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">.bindSheet($$this.isShow, this.myBuilder(),{<!-- --></span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">detents:[SheetSize.MEDIUM,SheetSize.LARGE,200],</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">title:{title:"title", subtitle:"subtitle"},</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">preferType: SheetType.POPUP,</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">shouldDismiss:((sheetDismiss: SheetDismiss)=&gt; {<!-- --></span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">console.log("bind sheet shouldDismiss")</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">sheetDismiss.dismiss()</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">})</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">})</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">}</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">.justifyContent(FlexAlign.Start)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">.width('100%')</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">.height('100%')</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">}</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">}</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">C.</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">// xxx.ets</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">@Entry</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">@Component</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">struct SheetTransitionExample {<!-- --></span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">@State isShow:boolean = false</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">@Builder myBuilder() {<!-- --></span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">Column() {<!-- --></span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">}</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">.width('100%')</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">}</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">build() {<!-- --></span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">Column() {<!-- --></span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">Button("transition modal 1")</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">.onClick(() =&gt; {<!-- --></span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">this.isShow = true</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">})</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">.fontSize(20)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">.margin(10)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">.bindSheet($$this.isShow, this.myBuilder(),{<!-- --></span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">detents:[SheetSize.MEDIUM,SheetSize.LARGE,200],</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">title:{title:"title", subtitle:"subtitle"},</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">preferType: SheetType.BOTTOM,</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">shouldDismiss:((sheetDismiss: SheetDismiss)=&gt; {<!-- --></span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">console.log("bind sheet shouldDismiss")</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">sheetDismiss.dismiss()</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">})</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">})</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">}</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">.justifyContent(FlexAlign.Start)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">.width('100%')</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">.height('100%')</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">}</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">}</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">D.</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">// xxx.ets</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">@Entry</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">@Component</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">struct SheetTransitionExample {<!-- --></span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">@State isShow:boolean = false</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">@Builder myBuilder() {<!-- --></span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">Column() {<!-- --></span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">}</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">.width('100%')</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#18191c;">}</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">77、Tabs组件可填入以下哪些参数：（ABD)</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">A barPosition</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">B controller</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">C backgroundColor</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">D Index</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">78、以下哪几个属于属性字符串支持的StyledStringValue? （CD)</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">A Span</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">B ParagraphStyle</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">C TextStyle</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">D TextShadowStyle</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">79、Web组件支持以下哪些常用属性（ABC)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A darkMode(mode:WebDarkMode)设置网页深色模式</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B textAutosizing 设置使能文本自动调整大小</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C copyOptions(value:CopyOptions)设置剪贴板复制范围</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D InputWindowlnfo 设置网页输入法软键盘的窗口信息</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">80、当UIAbility组件配置为指定实例启动模式后，其执行过程说法正确的有（BD)</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">A 会触发调用方AbilityStage的onAcceptWant()函数</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">B 会触发被调用方AbilityStage的onAcceptWant()函数</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">C onAcceptWant()函数的返回值是布尔类型</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">D onAcceptWant()函数的返回值是字符串类型</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">81、以下哪种场景，会触发Image组件的OnComplete回调事件(假设加载地址是有效的)（不确定）</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">A 组件宽高变化</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">B 图源发生变化，比如从$r("app.media.MG 8809")切换成$r("app.media.IMG 1100”)</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">C 页面首次加载</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">D 系统设置中深浅色模式发生变化</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">作者选bc是错误的，选abc也是错误</span></p> 
<p style="margin-left:0pt;text-align:left;"><span style="color:#000000;">82、如何实现类似下图的布局：选下面两个作为答案</span></p> 
<p style="margin-left:0pt;text-align:left;"><img alt="" height="1200" src="https://i-blog.csdnimg.cn/direct/717180694b464012bcb58eb375030d0f.png" width="720"></p> 
<p style="margin-left:0pt;text-align:left;"><img alt="" height="408" src="https://i-blog.csdnimg.cn/direct/8fcad886472a4197831acfe208090831.png" width="1200"></p> 
<p style="margin-left:0pt;text-align:left;"><img alt="" height="440" src="https://i-blog.csdnimg.cn/direct/705c8367823041b687a0e4b573ab7824.png" width="1200"></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">83、在使用DevEco studio进行Harmonyos应用开发和调试过程中，开发者小张遇到应用运行时意外终止的情况，他需要快速定位并解决导致应用崩溃的问题。以下哪些做法可以帮助小张有效分析和处理这些问题（AD)</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">A 利用系统自动生成的FaultLog，包括AppFreeze、Cpp Crash、JS Crash、System Freeze和ASan报告，这些报告会详细记录故障发生时的环境、堆械信息和可能的故障原因，是排查问题的重要参考</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">B 若遇到App运行卡顿或系统整体无响应(App Freeze,System Freeze)的情况;可以通过性能分析工具中的Frame insight和Allocation insight功能，分析应用的资源清耗情况，寻找可能的瓶颈</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">C 查看DevEco Studio log工具栏输出的错误日志，根据日志提示分析应用崩溃的具体原因及代码位置</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">D 当怀疑问题是由于C++代码中的内存错误(如数组越界、内存泄露、重复释放内存)引起时，进入"Run/Debug Configurations"设置界面，勾选启用Addres Sanitizer (Asan)，然后重新部署应用进行测试以获取更详细的内存问题报告</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">84、TabContent支持哪些设置对应TabBar内容的方式?（BC)</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">A TabContent().tabBar(SubTabBarStyle.of('tabBar’))</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">B @Builder tabBuilder{<!-- --></span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">...</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">}</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">TabContent(),tabBar(this.tabBuilder())</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">C TabContent().tabBar(“tabBar”)</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">D TabContent().tabBar(BottomTabBarStyle.of(r(sys media.ohos.app_icon), “tabBar”))</span></p> 
<p style="margin-left:0pt;text-align:justify;"><span style="color:#000000;">85、 以下代码中，懒加载生效的是（选下面两个）</span></p> 
<p><span style="color:#000000;">正确答案：</span></p> 
<p><img alt="" height="720" src="https://i-blog.csdnimg.cn/direct/c506ecd74dd3458680ffc7b69dda5792.png" width="1035"></p> 
<p><img alt="" height="720" src="https://i-blog.csdnimg.cn/direct/601630c727a44790a7de42d34570a8d7.png" width="1200"></p> 
<p></p>
                